#define LEVEL_UP_MOVE(lvl, moveLearned) {.move = moveLearned, .level = lvl}

static const struct LevelUpMove sBulbasaurLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 7, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(14, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(14, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(17, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(17, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(20, MOVE_GROWTH),
LEVEL_UP_MOVE(22, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(29, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(29, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(30, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(31, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(39, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sIvysaurLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 8, MOVE_VINE_WHIP),
LEVEL_UP_MOVE(14, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(14, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(19, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(19, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(20, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(26, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(31, MOVE_GROWTH),
LEVEL_UP_MOVE(37, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(37, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(38, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(48, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sVenusaurLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 0, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_AMNESIA),
LEVEL_UP_MOVE( 1, MOVE_POWER_WHIP),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 8, MOVE_VINE_WHIP),
LEVEL_UP_MOVE(14, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(14, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(19, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(19, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(20, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(26, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(32, MOVE_GROWTH),
LEVEL_UP_MOVE(32, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(40, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(40, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(43, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(50, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(57, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sCharmanderLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(12, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(13, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(15, MOVE_LEER),
LEVEL_UP_MOVE(18, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(19, MOVE_RAGE),
LEVEL_UP_MOVE(21, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(22, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(22, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(28, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(29, MOVE_SLASH),
LEVEL_UP_MOVE(32, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(38, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(40, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(41, MOVE_INFERNO),
LEVEL_UP_END
};

static const struct LevelUpMove sCharmeleonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_EMBER),
LEVEL_UP_MOVE(10, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(12, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(13, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(15, MOVE_LEER),
LEVEL_UP_MOVE(20, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(20, MOVE_RAGE),
LEVEL_UP_MOVE(23, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(24, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(26, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(32, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(33, MOVE_SLASH),
LEVEL_UP_MOVE(37, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(46, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(51, MOVE_INFERNO),
LEVEL_UP_MOVE(54, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sCharizardLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 0, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE( 1, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_EMBER),
LEVEL_UP_MOVE(10, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(12, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(13, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(15, MOVE_LEER),
LEVEL_UP_MOVE(20, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(20, MOVE_RAGE),
LEVEL_UP_MOVE(24, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(24, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(27, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(32, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(35, MOVE_SLASH),
LEVEL_UP_MOVE(36, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(40, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(51, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(58, MOVE_INFERNO),
LEVEL_UP_MOVE(62, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(67, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE(69, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sSquirtleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 9, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 9, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 9, MOVE_BUBBLE),
LEVEL_UP_MOVE(15, MOVE_BITE),
LEVEL_UP_MOVE(16, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(21, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(22, MOVE_PROTECT),
LEVEL_UP_MOVE(26, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(27, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(27, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(31, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(32, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(34, MOVE_SKULL_BASH),
LEVEL_UP_MOVE(36, MOVE_HEADBUTT),
LEVEL_UP_MOVE(38, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sWartortleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 9, MOVE_BUBBLE),
LEVEL_UP_MOVE(11, MOVE_WITHDRAW),
LEVEL_UP_MOVE(11, MOVE_WATER_GUN),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(23, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(25, MOVE_PROTECT),
LEVEL_UP_MOVE(31, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(33, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(35, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(36, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(40, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(43, MOVE_SKULL_BASH),
LEVEL_UP_MOVE(46, MOVE_HEADBUTT),
LEVEL_UP_MOVE(48, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sBlastoiseLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE( 1, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 9, MOVE_BUBBLE),
LEVEL_UP_MOVE(11, MOVE_WITHDRAW),
LEVEL_UP_MOVE(11, MOVE_WATER_GUN),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(23, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(25, MOVE_PROTECT),
LEVEL_UP_MOVE(31, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(33, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(35, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(42, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(44, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(48, MOVE_SKULL_BASH),
LEVEL_UP_MOVE(54, MOVE_HEADBUTT),
LEVEL_UP_MOVE(57, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sCaterpieLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE(11, MOVE_BUG_BITE),
LEVEL_UP_END
};

static const struct LevelUpMove sMetapodLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_END
};

static const struct LevelUpMove sButterfreeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 9, MOVE_CONFUSION),
LEVEL_UP_MOVE(12, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(12, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(12, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(14, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(18, MOVE_GUST),
LEVEL_UP_MOVE(21, MOVE_PSYBEAM),
LEVEL_UP_MOVE(22, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(28, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(29, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(32, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(33, MOVE_TAILWIND),
LEVEL_UP_MOVE(36, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(36, MOVE_RAGE_POWDER),
LEVEL_UP_MOVE(38, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(42, MOVE_QUIVER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sWeedleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE(13, MOVE_BUG_BITE),
LEVEL_UP_END
};

static const struct LevelUpMove sKakunaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_END
};

static const struct LevelUpMove sBeedrillLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_TWINEEDLE),
LEVEL_UP_MOVE( 1, MOVE_TWINEEDLE),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(10, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(14, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(17, MOVE_TWINEEDLE),
LEVEL_UP_MOVE(18, MOVE_RAGE),
LEVEL_UP_MOVE(22, MOVE_PURSUIT),
LEVEL_UP_MOVE(23, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(25, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(29, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(31, MOVE_OUTRAGE),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(32, MOVE_ASSURANCE),
LEVEL_UP_MOVE(34, MOVE_POISON_JAB),
LEVEL_UP_MOVE(40, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(44, MOVE_FELL_STINGER),
LEVEL_UP_END
};

static const struct LevelUpMove sPidgeyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_GUST),
LEVEL_UP_MOVE(12, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(18, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(21, MOVE_TWISTER),
LEVEL_UP_MOVE(25, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(29, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(29, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(30, MOVE_AGILITY),
LEVEL_UP_MOVE(34, MOVE_ROOST),
LEVEL_UP_MOVE(41, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(41, MOVE_TAILWIND),
LEVEL_UP_MOVE(45, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(53, MOVE_HURRICANE),
LEVEL_UP_END
};

static const struct LevelUpMove sPidgeottoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_GUST),
LEVEL_UP_MOVE(12, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(18, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(22, MOVE_TWISTER),
LEVEL_UP_MOVE(27, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(32, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(33, MOVE_AGILITY),
LEVEL_UP_MOVE(38, MOVE_ROOST),
LEVEL_UP_MOVE(45, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(47, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(47, MOVE_TAILWIND),
LEVEL_UP_MOVE(54, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(62, MOVE_HURRICANE),
LEVEL_UP_END
};

static const struct LevelUpMove sPidgeotLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_GUST),
LEVEL_UP_MOVE(12, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(18, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(22, MOVE_TWISTER),
LEVEL_UP_MOVE(27, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(33, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(40, MOVE_ROOST),
LEVEL_UP_MOVE(50, MOVE_TAILWIND),
LEVEL_UP_MOVE(51, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(53, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(59, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(68, MOVE_HURRICANE),
LEVEL_UP_END
};

static const struct LevelUpMove sRattataLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(10, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_PURSUIT),
LEVEL_UP_MOVE(16, MOVE_HYPER_FANG),
LEVEL_UP_MOVE(20, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(21, MOVE_CRUNCH),
LEVEL_UP_MOVE(23, MOVE_ASSURANCE),
LEVEL_UP_MOVE(27, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(30, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(34, MOVE_ENDEAVOR),
LEVEL_UP_END
};

static const struct LevelUpMove sRaticateLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(10, MOVE_BITE),
LEVEL_UP_MOVE(16, MOVE_HYPER_FANG),
LEVEL_UP_MOVE(16, MOVE_PURSUIT),
LEVEL_UP_MOVE(20, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(22, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(23, MOVE_CRUNCH),
LEVEL_UP_MOVE(27, MOVE_ASSURANCE),
LEVEL_UP_MOVE(33, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(39, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(44, MOVE_ENDEAVOR),
LEVEL_UP_END
};

static const struct LevelUpMove sSpearowLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(13, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(20, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(22, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(27, MOVE_ASSURANCE),
LEVEL_UP_MOVE(28, MOVE_AGILITY),
LEVEL_UP_MOVE(31, MOVE_ROOST),
LEVEL_UP_MOVE(36, MOVE_DRILL_PECK),
LEVEL_UP_END
};

static const struct LevelUpMove sFearowLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_DRILL_RUN),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_PLUCK),
LEVEL_UP_MOVE( 1, MOVE_PAY_DAY),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(14, MOVE_PURSUIT),
LEVEL_UP_MOVE(16, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(21, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(23, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(32, MOVE_ASSURANCE),
LEVEL_UP_MOVE(33, MOVE_AGILITY),
LEVEL_UP_MOVE(38, MOVE_ROOST),
LEVEL_UP_MOVE(44, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(51, MOVE_DRILL_RUN),
LEVEL_UP_END
};

static const struct LevelUpMove sEkansLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_POISON_STING),
LEVEL_UP_MOVE(10, MOVE_BITE),
LEVEL_UP_MOVE(14, MOVE_GLARE),
LEVEL_UP_MOVE(20, MOVE_SCREECH),
LEVEL_UP_MOVE(21, MOVE_ACID),
LEVEL_UP_MOVE(24, MOVE_POISON_JAB),
LEVEL_UP_MOVE(26, MOVE_STOCKPILE),
LEVEL_UP_MOVE(26, MOVE_SWALLOW),
LEVEL_UP_MOVE(26, MOVE_SPIT_UP),
LEVEL_UP_MOVE(28, MOVE_SLAM),
LEVEL_UP_MOVE(28, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(31, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(35, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(36, MOVE_TOXIC),
LEVEL_UP_MOVE(37, MOVE_HAZE),
LEVEL_UP_MOVE(38, MOVE_BELCH),
LEVEL_UP_MOVE(44, MOVE_COIL),
LEVEL_UP_MOVE(46, MOVE_GUNK_SHOT),
LEVEL_UP_END
};

static const struct LevelUpMove sArbokLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_POISON_STING),
LEVEL_UP_MOVE(10, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_GLARE),
LEVEL_UP_MOVE(22, MOVE_ACID),
LEVEL_UP_MOVE(22, MOVE_SCREECH),
LEVEL_UP_MOVE(22, MOVE_CRUNCH),
LEVEL_UP_MOVE(28, MOVE_POISON_JAB),
LEVEL_UP_MOVE(29, MOVE_STOCKPILE),
LEVEL_UP_MOVE(29, MOVE_SWALLOW),
LEVEL_UP_MOVE(29, MOVE_SPIT_UP),
LEVEL_UP_MOVE(32, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(36, MOVE_SLAM),
LEVEL_UP_MOVE(37, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(43, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(46, MOVE_HAZE),
LEVEL_UP_MOVE(48, MOVE_BELCH),
LEVEL_UP_MOVE(52, MOVE_TOXIC),
LEVEL_UP_MOVE(56, MOVE_COIL),
LEVEL_UP_MOVE(60, MOVE_GUNK_SHOT),
LEVEL_UP_END
};

static const struct LevelUpMove sPikachuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 9, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(14, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(22, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_FEINT),
LEVEL_UP_MOVE(26, MOVE_SLAM),
LEVEL_UP_MOVE(26, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_NUZZLE),
LEVEL_UP_MOVE(31, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_DISCHARGE),
LEVEL_UP_MOVE(42, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(45, MOVE_THUNDER),
LEVEL_UP_MOVE(50, MOVE_WILD_CHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sRaichuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_SLAM),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE( 1, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE( 1, MOVE_THUNDER),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_END
};

static const struct LevelUpMove sSandshrewLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_POISON_STING),
LEVEL_UP_MOVE(11, MOVE_ROLLOUT),
LEVEL_UP_MOVE(12, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(15, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(15, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(18, MOVE_BULLDOZE),
LEVEL_UP_MOVE(18, MOVE_SWIFT),
LEVEL_UP_MOVE(23, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(24, MOVE_PROTECT),
LEVEL_UP_MOVE(27, MOVE_AGILITY),
LEVEL_UP_MOVE(27, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(28, MOVE_SLASH),
LEVEL_UP_MOVE(30, MOVE_DIG),
LEVEL_UP_MOVE(34, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(37, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(41, MOVE_SANDSTORM),
LEVEL_UP_MOVE(44, MOVE_EARTHQUAKE),
LEVEL_UP_END
};

static const struct LevelUpMove sSandslashLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE( 1, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_POISON_STING),
LEVEL_UP_MOVE(11, MOVE_ROLLOUT),
LEVEL_UP_MOVE(12, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(15, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(16, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(18, MOVE_BULLDOZE),
LEVEL_UP_MOVE(18, MOVE_SWIFT),
LEVEL_UP_MOVE(22, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(24, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(28, MOVE_PROTECT),
LEVEL_UP_MOVE(30, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(33, MOVE_SLASH),
LEVEL_UP_MOVE(34, MOVE_DIG),
LEVEL_UP_MOVE(42, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(44, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(51, MOVE_SANDSTORM),
LEVEL_UP_MOVE(54, MOVE_EARTHQUAKE),
LEVEL_UP_END
};

static const struct LevelUpMove sNidoranFLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_SCRATCH),
LEVEL_UP_MOVE( 8, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(12, MOVE_POISON_STING),
LEVEL_UP_MOVE(14, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(20, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(23, MOVE_BITE),
LEVEL_UP_MOVE(26, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(27, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(27, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(35, MOVE_TOXIC),
LEVEL_UP_MOVE(37, MOVE_FLATTER),
LEVEL_UP_MOVE(40, MOVE_CRUNCH),
LEVEL_UP_MOVE(43, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(45, MOVE_POISON_FANG),
LEVEL_UP_MOVE(55, MOVE_EARTH_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sNidorinaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 8, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 8, MOVE_SCRATCH),
LEVEL_UP_MOVE(13, MOVE_POISON_STING),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(22, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(26, MOVE_BITE),
LEVEL_UP_MOVE(30, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(31, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(43, MOVE_TOXIC),
LEVEL_UP_MOVE(44, MOVE_FLATTER),
LEVEL_UP_MOVE(47, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(49, MOVE_CRUNCH),
LEVEL_UP_MOVE(50, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(58, MOVE_POISON_FANG),
LEVEL_UP_MOVE(71, MOVE_EARTH_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sNidoqueenLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SUPERPOWER),
LEVEL_UP_MOVE( 0, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_SUPERPOWER),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 1, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TOXIC),
LEVEL_UP_MOVE( 1, MOVE_FLATTER),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 8, MOVE_SCRATCH),
LEVEL_UP_MOVE(12, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(14, MOVE_POISON_STING),
LEVEL_UP_MOVE(23, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(29, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(43, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(56, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sNidoranMLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_PECK),
LEVEL_UP_MOVE( 8, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(12, MOVE_POISON_STING),
LEVEL_UP_MOVE(14, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(19, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(21, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(26, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(27, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(35, MOVE_TOXIC),
LEVEL_UP_MOVE(37, MOVE_FLATTER),
LEVEL_UP_MOVE(40, MOVE_POISON_JAB),
LEVEL_UP_MOVE(42, MOVE_HORN_DRILL),
LEVEL_UP_MOVE(43, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(55, MOVE_EARTH_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sNidorinoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(13, MOVE_POISON_STING),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(21, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(24, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(30, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(31, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(43, MOVE_TOXIC),
LEVEL_UP_MOVE(44, MOVE_FLATTER),
LEVEL_UP_MOVE(49, MOVE_POISON_JAB),
LEVEL_UP_MOVE(50, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(54, MOVE_HORN_DRILL),
LEVEL_UP_MOVE(71, MOVE_EARTH_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sNidokingLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 0, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TOXIC),
LEVEL_UP_MOVE( 1, MOVE_FLATTER),
LEVEL_UP_MOVE( 1, MOVE_POISON_JAB),
LEVEL_UP_MOVE( 1, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 8, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(12, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(14, MOVE_POISON_STING),
LEVEL_UP_MOVE(23, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(29, MOVE_THRASH),
LEVEL_UP_MOVE(43, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(56, MOVE_MEGAHORN),
LEVEL_UP_END
};

static const struct LevelUpMove sClefairyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_SPOTLIGHT),
LEVEL_UP_MOVE( 1, MOVE_AFTER_YOU),
LEVEL_UP_MOVE( 1, MOVE_HEALING_WISH),
LEVEL_UP_MOVE( 7, MOVE_SING),
LEVEL_UP_MOVE( 7, MOVE_ENCORE),
LEVEL_UP_MOVE(11, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(14, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(16, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(16, MOVE_AMNESIA),
LEVEL_UP_MOVE(17, MOVE_MINIMIZE),
LEVEL_UP_MOVE(18, MOVE_STORED_POWER),
LEVEL_UP_MOVE(20, MOVE_BESTOW),
LEVEL_UP_MOVE(22, MOVE_FOLLOW_ME),
LEVEL_UP_MOVE(22, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(26, MOVE_METRONOME),
LEVEL_UP_MOVE(33, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(34, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(35, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(36, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(36, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(37, MOVE_GRAVITY),
LEVEL_UP_MOVE(42, MOVE_METEOR_MASH),
LEVEL_UP_MOVE(42, MOVE_MOONBLAST),
LEVEL_UP_MOVE(43, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(50, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sClefableLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_METRONOME),
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_AFTER_YOU),
LEVEL_UP_MOVE( 1, MOVE_LIFE_DEW),
LEVEL_UP_MOVE( 1, MOVE_METRONOME),
LEVEL_UP_MOVE( 1, MOVE_MOONLIGHT),
LEVEL_UP_MOVE( 1, MOVE_GRAVITY),
LEVEL_UP_MOVE( 1, MOVE_METEOR_MASH),
LEVEL_UP_MOVE( 1, MOVE_FOLLOW_ME),
LEVEL_UP_MOVE( 1, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_HEALING_WISH),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_SPOTLIGHT),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_SLAP),
LEVEL_UP_END
};

static const struct LevelUpMove sVulpixLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_DISABLE),
LEVEL_UP_MOVE( 7, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(10, MOVE_ROAR),
LEVEL_UP_MOVE(12, MOVE_SPITE),
LEVEL_UP_MOVE(16, MOVE_INCINERATE),
LEVEL_UP_MOVE(17, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(21, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(21, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(25, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(26, MOVE_HEX),
LEVEL_UP_MOVE(27, MOVE_PAYBACK),
LEVEL_UP_MOVE(28, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(29, MOVE_IMPRISON),
LEVEL_UP_MOVE(31, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(35, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(35, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(43, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(45, MOVE_GRUDGE),
LEVEL_UP_MOVE(47, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(48, MOVE_INFERNO),
LEVEL_UP_END
};

static const struct LevelUpMove sNinetalesLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_INCINERATE),
LEVEL_UP_MOVE( 1, MOVE_SPITE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 1, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE( 1, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 1, MOVE_INFERNO),
LEVEL_UP_MOVE( 1, MOVE_GRUDGE),
LEVEL_UP_MOVE( 1, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_ROAR),
LEVEL_UP_MOVE(44, MOVE_FIRE_SPIN),
LEVEL_UP_END
};

static const struct LevelUpMove sJigglypuffLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 4, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 7, MOVE_POUND),
LEVEL_UP_MOVE( 8, MOVE_COVET),
LEVEL_UP_MOVE( 9, MOVE_PLAY_NICE),
LEVEL_UP_MOVE(10, MOVE_BIDE),
LEVEL_UP_MOVE(13, MOVE_DISABLE),
LEVEL_UP_MOVE(14, MOVE_STOCKPILE),
LEVEL_UP_MOVE(14, MOVE_SWALLOW),
LEVEL_UP_MOVE(14, MOVE_SPIT_UP),
LEVEL_UP_MOVE(18, MOVE_ROUND),
LEVEL_UP_MOVE(19, MOVE_ROLLOUT),
LEVEL_UP_MOVE(20, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(23, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(25, MOVE_REST),
LEVEL_UP_MOVE(29, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(34, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(35, MOVE_MIMIC),
LEVEL_UP_MOVE(35, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(40, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(42, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(45, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sWigglytuffLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_STOCKPILE),
LEVEL_UP_MOVE( 1, MOVE_SWALLOW),
LEVEL_UP_MOVE( 1, MOVE_SPIT_UP),
LEVEL_UP_MOVE( 1, MOVE_ROUND),
LEVEL_UP_MOVE( 1, MOVE_REST),
LEVEL_UP_MOVE( 1, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_MIMIC),
LEVEL_UP_MOVE( 1, MOVE_GYRO_BALL),
LEVEL_UP_MOVE( 1, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 1, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_SLAP),
LEVEL_UP_END
};

static const struct LevelUpMove sZubatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 5, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(15, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(17, MOVE_BITE),
LEVEL_UP_MOVE(20, MOVE_SWIFT),
LEVEL_UP_MOVE(24, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(24, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(26, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(27, MOVE_POISON_FANG),
LEVEL_UP_MOVE(28, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(28, MOVE_TOXIC),
LEVEL_UP_MOVE(30, MOVE_ACROBATICS),
LEVEL_UP_MOVE(36, MOVE_HAZE),
LEVEL_UP_MOVE(38, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(44, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(45, MOVE_LEECH_LIFE),
LEVEL_UP_END
};

static const struct LevelUpMove sGolbatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_WHIRLWIND),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 5, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 8, MOVE_ASTONISH),
LEVEL_UP_MOVE(16, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(18, MOVE_BITE),
LEVEL_UP_MOVE(21, MOVE_SWIFT),
LEVEL_UP_MOVE(26, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(29, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(30, MOVE_POISON_FANG),
LEVEL_UP_MOVE(30, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(34, MOVE_ACROBATICS),
LEVEL_UP_MOVE(35, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(40, MOVE_TOXIC),
LEVEL_UP_MOVE(42, MOVE_HAZE),
LEVEL_UP_MOVE(46, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(54, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(55, MOVE_LEECH_LIFE),
LEVEL_UP_END
};

static const struct LevelUpMove sOddishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 4, MOVE_GROWTH),
LEVEL_UP_MOVE( 6, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 9, MOVE_ACID),
LEVEL_UP_MOVE(13, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(15, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(16, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(17, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(18, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(24, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(27, MOVE_TOXIC),
LEVEL_UP_MOVE(29, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(32, MOVE_MOONBLAST),
LEVEL_UP_MOVE(32, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(32, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(38, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE(41, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(46, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sGloomLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_POISON_POWDER),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 4, MOVE_GROWTH),
LEVEL_UP_MOVE( 5, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(12, MOVE_ACID),
LEVEL_UP_MOVE(13, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(15, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(16, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(18, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(19, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(27, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(31, MOVE_TOXIC),
LEVEL_UP_MOVE(34, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(34, MOVE_MOONBLAST),
LEVEL_UP_MOVE(37, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(39, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(45, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE(49, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(51, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(52, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sVileplumeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_POISON_POWDER),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE( 1, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_TOXIC),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_MOONLIGHT),
LEVEL_UP_MOVE( 1, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(15, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(17, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(19, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(49, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(53, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(65, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sParasLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 2, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE( 6, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 7, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(10, MOVE_ABSORB),
LEVEL_UP_MOVE(14, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(15, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(22, MOVE_SPORE),
LEVEL_UP_MOVE(25, MOVE_SLASH),
LEVEL_UP_MOVE(30, MOVE_GROWTH),
LEVEL_UP_MOVE(37, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(42, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(47, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(49, MOVE_RAGE_POWDER),
LEVEL_UP_END
};

static const struct LevelUpMove sParasectLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_POISON_POWDER),
LEVEL_UP_MOVE( 1, MOVE_CROSS_POISON),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 2, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE( 6, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 7, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(10, MOVE_ABSORB),
LEVEL_UP_MOVE(14, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(15, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(23, MOVE_SPORE),
LEVEL_UP_MOVE(27, MOVE_SLASH),
LEVEL_UP_MOVE(34, MOVE_GROWTH),
LEVEL_UP_MOVE(44, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(51, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(59, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(59, MOVE_RAGE_POWDER),
LEVEL_UP_END
};

static const struct LevelUpMove sVenonatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 4, MOVE_DISABLE),
LEVEL_UP_MOVE( 6, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(14, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(22, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(23, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(25, MOVE_PSYBEAM),
LEVEL_UP_MOVE(29, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(33, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(37, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(41, MOVE_POISON_FANG),
LEVEL_UP_MOVE(44, MOVE_PSYCHIC),
LEVEL_UP_END
};

static const struct LevelUpMove sVenomothLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE( 1, MOVE_SILVER_WIND),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 1, MOVE_POISON_POWDER),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 4, MOVE_DISABLE),
LEVEL_UP_MOVE( 6, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(14, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(22, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(23, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(25, MOVE_PSYBEAM),
LEVEL_UP_MOVE(31, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(31, MOVE_GUST),
LEVEL_UP_MOVE(34, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(41, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(47, MOVE_POISON_FANG),
LEVEL_UP_MOVE(52, MOVE_PSYCHIC),
LEVEL_UP_MOVE(57, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(61, MOVE_QUIVER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sDiglettLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_AGILITY),
LEVEL_UP_MOVE(12, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(13, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(13, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(16, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_BULLDOZE),
LEVEL_UP_MOVE(22, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(26, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(27, MOVE_DIG),
LEVEL_UP_MOVE(28, MOVE_SANDSTORM),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(30, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(38, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(43, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sDugtrioLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 0, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_ROTOTILLER),
LEVEL_UP_MOVE( 1, MOVE_MAGNITUDE),
LEVEL_UP_MOVE( 1, MOVE_DIG),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_AGILITY),
LEVEL_UP_MOVE(12, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(13, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(13, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(16, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_BULLDOZE),
LEVEL_UP_MOVE(22, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(26, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(28, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(30, MOVE_SANDSTORM),
LEVEL_UP_MOVE(30, MOVE_DIG),
LEVEL_UP_MOVE(34, MOVE_SLASH),
LEVEL_UP_MOVE(35, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(47, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(54, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sMeowthLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 8, MOVE_SCRATCH),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(12, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(21, MOVE_PAY_DAY),
LEVEL_UP_MOVE(21, MOVE_TAUNT),
LEVEL_UP_MOVE(22, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(23, MOVE_SCREECH),
LEVEL_UP_MOVE(23, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(31, MOVE_FEINT),
LEVEL_UP_MOVE(34, MOVE_ASSURANCE),
LEVEL_UP_MOVE(34, MOVE_SLASH),
LEVEL_UP_MOVE(37, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(41, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(45, MOVE_SWAGGER),
LEVEL_UP_MOVE(46, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(49, MOVE_NIGHT_SLASH),
LEVEL_UP_END
};

static const struct LevelUpMove sPersianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_SWITCHEROO),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_AMNESIA),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(13, MOVE_PAY_DAY),
LEVEL_UP_MOVE(13, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(21, MOVE_TAUNT),
LEVEL_UP_MOVE(23, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(23, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(25, MOVE_SCREECH),
LEVEL_UP_MOVE(28, MOVE_SWIFT),
LEVEL_UP_MOVE(32, MOVE_POWER_GEM),
LEVEL_UP_MOVE(39, MOVE_ASSURANCE),
LEVEL_UP_MOVE(39, MOVE_SLASH),
LEVEL_UP_MOVE(44, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(52, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(56, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(58, MOVE_FEINT),
LEVEL_UP_MOVE(61, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(61, MOVE_SWAGGER),
LEVEL_UP_END
};

static const struct LevelUpMove sPsyduckLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 6, MOVE_WATER_GUN),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(15, MOVE_DISABLE),
LEVEL_UP_MOVE(16, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(20, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(25, MOVE_SCREECH),
LEVEL_UP_MOVE(27, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(27, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(27, MOVE_PSYBEAM),
LEVEL_UP_MOVE(31, MOVE_SOAK),
LEVEL_UP_MOVE(34, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(36, MOVE_SURF),
LEVEL_UP_MOVE(39, MOVE_AMNESIA),
LEVEL_UP_MOVE(43, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(44, MOVE_WONDER_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sGolduckLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_ME_FIRST),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 8, MOVE_WATER_GUN),
LEVEL_UP_MOVE(15, MOVE_DISABLE),
LEVEL_UP_MOVE(15, MOVE_CONFUSION),
LEVEL_UP_MOVE(16, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(20, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(25, MOVE_SCREECH),
LEVEL_UP_MOVE(27, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(27, MOVE_PSYBEAM),
LEVEL_UP_MOVE(28, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(32, MOVE_SOAK),
LEVEL_UP_MOVE(35, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(42, MOVE_SURF),
LEVEL_UP_MOVE(44, MOVE_AMNESIA),
LEVEL_UP_MOVE(51, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(52, MOVE_WONDER_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sMankeyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 8, MOVE_TAUNT),
LEVEL_UP_MOVE(11, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(12, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE(12, MOVE_PURSUIT),
LEVEL_UP_MOVE(13, MOVE_LOW_KICK),
LEVEL_UP_MOVE(17, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(20, MOVE_SEISMIC_TOSS),
LEVEL_UP_MOVE(25, MOVE_ASSURANCE),
LEVEL_UP_MOVE(28, MOVE_SCREECH),
LEVEL_UP_MOVE(29, MOVE_U_TURN),
LEVEL_UP_MOVE(30, MOVE_SWAGGER),
LEVEL_UP_MOVE(34, MOVE_CROSS_CHOP),
LEVEL_UP_MOVE(40, MOVE_THRASH),
LEVEL_UP_MOVE(42, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(43, MOVE_OUTRAGE),
LEVEL_UP_MOVE(43, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(46, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(52, MOVE_FINAL_GAMBIT),
LEVEL_UP_END
};

static const struct LevelUpMove sPrimeapeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_RAGE),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_FINAL_GAMBIT),
LEVEL_UP_MOVE( 1, MOVE_FLING),
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 8, MOVE_TAUNT),
LEVEL_UP_MOVE(11, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(12, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE(12, MOVE_PURSUIT),
LEVEL_UP_MOVE(13, MOVE_LOW_KICK),
LEVEL_UP_MOVE(17, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(20, MOVE_SEISMIC_TOSS),
LEVEL_UP_MOVE(25, MOVE_ASSURANCE),
LEVEL_UP_MOVE(28, MOVE_RAGE),
LEVEL_UP_MOVE(31, MOVE_SCREECH),
LEVEL_UP_MOVE(33, MOVE_U_TURN),
LEVEL_UP_MOVE(33, MOVE_SWAGGER),
LEVEL_UP_MOVE(38, MOVE_CROSS_CHOP),
LEVEL_UP_MOVE(48, MOVE_THRASH),
LEVEL_UP_MOVE(48, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(49, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(54, MOVE_OUTRAGE),
LEVEL_UP_MOVE(55, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(61, MOVE_FINAL_GAMBIT),
LEVEL_UP_END
};

static const struct LevelUpMove sGrowlitheLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_ROAR),
LEVEL_UP_MOVE( 4, MOVE_HOWL),
LEVEL_UP_MOVE( 6, MOVE_EMBER),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE(12, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(16, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(18, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(23, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(28, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(30, MOVE_AGILITY),
LEVEL_UP_MOVE(31, MOVE_RETALIATE),
LEVEL_UP_MOVE(32, MOVE_REVERSAL),
LEVEL_UP_MOVE(36, MOVE_CRUNCH),
LEVEL_UP_MOVE(36, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(40, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE(40, MOVE_OUTRAGE),
LEVEL_UP_MOVE(44, MOVE_ROAR),
LEVEL_UP_MOVE(45, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(49, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sArcanineLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE( 1, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE( 1, MOVE_BURN_UP),
LEVEL_UP_MOVE( 1, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_RETALIATE),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE( 1, MOVE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 1, MOVE_REVERSAL),
LEVEL_UP_MOVE( 1, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HOWL),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(38, MOVE_EXTREME_SPEED),
LEVEL_UP_END
};

static const struct LevelUpMove sPoliwagLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_POUND),
LEVEL_UP_MOVE( 7, MOVE_BUBBLE),
LEVEL_UP_MOVE( 8, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 9, MOVE_WATER_GUN),
LEVEL_UP_MOVE(16, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(20, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(22, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(22, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(25, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(26, MOVE_LOW_KICK),
LEVEL_UP_MOVE(35, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(36, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(37, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(38, MOVE_AMNESIA),
LEVEL_UP_MOVE(39, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(41, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(54, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sPoliwhirlLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_POUND),
LEVEL_UP_MOVE( 7, MOVE_BUBBLE),
LEVEL_UP_MOVE( 8, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 9, MOVE_WATER_GUN),
LEVEL_UP_MOVE(16, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(21, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(23, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(24, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(27, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(30, MOVE_LOW_KICK),
LEVEL_UP_MOVE(40, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(41, MOVE_AMNESIA),
LEVEL_UP_MOVE(43, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(43, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(48, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(53, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(66, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sPoliwrathLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SUBMISSION),
LEVEL_UP_MOVE( 1, MOVE_SUBMISSION),
LEVEL_UP_MOVE( 1, MOVE_CIRCLE_THROW),
LEVEL_UP_MOVE( 1, MOVE_MIND_READER),
LEVEL_UP_MOVE( 1, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE( 1, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_MUD_SHOT),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_BULK_UP),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(16, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(19, MOVE_WATER_GUN),
LEVEL_UP_MOVE(35, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(35, MOVE_SUBMISSION),
LEVEL_UP_MOVE(46, MOVE_MIND_READER),
LEVEL_UP_MOVE(53, MOVE_CIRCLE_THROW),
LEVEL_UP_MOVE(57, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sAbraLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_END
};

static const struct LevelUpMove sKadabraLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CONFUSION),
LEVEL_UP_MOVE( 0, MOVE_KINESIS),
LEVEL_UP_MOVE( 0, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_KINESIS),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 1, MOVE_FLASH),
LEVEL_UP_MOVE(13, MOVE_FLASH),
LEVEL_UP_MOVE(16, MOVE_DISABLE),
LEVEL_UP_MOVE(16, MOVE_CONFUSION),
LEVEL_UP_MOVE(18, MOVE_PSYBEAM),
LEVEL_UP_MOVE(19, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(22, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE(22, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE(24, MOVE_REFLECT),
LEVEL_UP_MOVE(26, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(29, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(30, MOVE_RECOVER),
LEVEL_UP_MOVE(30, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(33, MOVE_TELEKINESIS),
LEVEL_UP_MOVE(39, MOVE_PSYCHIC),
LEVEL_UP_MOVE(39, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE(42, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(47, MOVE_TRICK),
LEVEL_UP_MOVE(50, MOVE_CALM_MIND),
LEVEL_UP_END
};

static const struct LevelUpMove sAlakazamLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 0, MOVE_KINESIS),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_KINESIS),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 1, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 1, MOVE_BARRIER),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_FLASH),
LEVEL_UP_MOVE(13, MOVE_FLASH),
LEVEL_UP_MOVE(16, MOVE_DISABLE),
LEVEL_UP_MOVE(16, MOVE_CONFUSION),
LEVEL_UP_MOVE(18, MOVE_PSYBEAM),
LEVEL_UP_MOVE(19, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(22, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE(22, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE(24, MOVE_REFLECT),
LEVEL_UP_MOVE(26, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(29, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(30, MOVE_RECOVER),
LEVEL_UP_MOVE(30, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(33, MOVE_TELEKINESIS),
LEVEL_UP_MOVE(39, MOVE_PSYCHIC),
LEVEL_UP_MOVE(40, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE(42, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(42, MOVE_CALM_MIND),
LEVEL_UP_MOVE(47, MOVE_TRICK),
LEVEL_UP_END
};

static const struct LevelUpMove sMachopLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE( 5, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 8, MOVE_BIDE),
LEVEL_UP_MOVE(10, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE(12, MOVE_LOW_SWEEP),
LEVEL_UP_MOVE(15, MOVE_FORESIGHT),
LEVEL_UP_MOVE(17, MOVE_REVENGE),
LEVEL_UP_MOVE(17, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(20, MOVE_LOW_KICK),
LEVEL_UP_MOVE(21, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(24, MOVE_SEISMIC_TOSS),
LEVEL_UP_MOVE(25, MOVE_LEER),
LEVEL_UP_MOVE(26, MOVE_VITAL_THROW),
LEVEL_UP_MOVE(29, MOVE_STRENGTH),
LEVEL_UP_MOVE(31, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE(32, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(33, MOVE_SUBMISSION),
LEVEL_UP_MOVE(35, MOVE_BULK_UP),
LEVEL_UP_MOVE(36, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(36, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(42, MOVE_CROSS_CHOP),
LEVEL_UP_MOVE(46, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(52, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sMachokeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_REVENGE),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE( 6, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 8, MOVE_BIDE),
LEVEL_UP_MOVE(10, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE(12, MOVE_LOW_SWEEP),
LEVEL_UP_MOVE(15, MOVE_FORESIGHT),
LEVEL_UP_MOVE(17, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(20, MOVE_LOW_KICK),
LEVEL_UP_MOVE(21, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(22, MOVE_REVENGE),
LEVEL_UP_MOVE(25, MOVE_LEER),
LEVEL_UP_MOVE(27, MOVE_VITAL_THROW),
LEVEL_UP_MOVE(27, MOVE_SEISMIC_TOSS),
LEVEL_UP_MOVE(31, MOVE_STRENGTH),
LEVEL_UP_MOVE(34, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE(34, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(36, MOVE_SUBMISSION),
LEVEL_UP_MOVE(40, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(41, MOVE_BULK_UP),
LEVEL_UP_MOVE(48, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(49, MOVE_CROSS_CHOP),
LEVEL_UP_MOVE(54, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(66, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sMachampLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_STRENGTH),
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_REVENGE),
LEVEL_UP_MOVE( 1, MOVE_STRENGTH),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE( 6, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 8, MOVE_BIDE),
LEVEL_UP_MOVE(10, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE(12, MOVE_LOW_SWEEP),
LEVEL_UP_MOVE(15, MOVE_FORESIGHT),
LEVEL_UP_MOVE(17, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(20, MOVE_LOW_KICK),
LEVEL_UP_MOVE(21, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(22, MOVE_REVENGE),
LEVEL_UP_MOVE(25, MOVE_LEER),
LEVEL_UP_MOVE(27, MOVE_VITAL_THROW),
LEVEL_UP_MOVE(27, MOVE_SEISMIC_TOSS),
LEVEL_UP_MOVE(31, MOVE_STRENGTH),
LEVEL_UP_MOVE(34, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE(34, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(36, MOVE_SUBMISSION),
LEVEL_UP_MOVE(40, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(41, MOVE_BULK_UP),
LEVEL_UP_MOVE(48, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(49, MOVE_CROSS_CHOP),
LEVEL_UP_MOVE(54, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(66, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sBellsproutLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 6, MOVE_GROWTH),
LEVEL_UP_MOVE(10, MOVE_WRAP),
LEVEL_UP_MOVE(13, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(15, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(17, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(21, MOVE_ACID),
LEVEL_UP_MOVE(27, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(29, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(33, MOVE_POISON_JAB),
LEVEL_UP_MOVE(35, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(36, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(41, MOVE_SLAM),
LEVEL_UP_MOVE(47, MOVE_WRING_OUT),
LEVEL_UP_END
};

static const struct LevelUpMove sWeepinbellLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 6, MOVE_GROWTH),
LEVEL_UP_MOVE(10, MOVE_WRAP),
LEVEL_UP_MOVE(13, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(15, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(17, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(22, MOVE_ACID),
LEVEL_UP_MOVE(27, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(30, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(35, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(38, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(41, MOVE_POISON_JAB),
LEVEL_UP_MOVE(45, MOVE_SLAM),
LEVEL_UP_MOVE(48, MOVE_WRING_OUT),
LEVEL_UP_END
};

static const struct LevelUpMove sVictreebelLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE( 1, MOVE_POWER_WHIP),
LEVEL_UP_MOVE( 1, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE( 1, MOVE_STOCKPILE),
LEVEL_UP_MOVE( 1, MOVE_SWALLOW),
LEVEL_UP_MOVE( 1, MOVE_SPIT_UP),
LEVEL_UP_MOVE( 1, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(13, MOVE_WRAP),
LEVEL_UP_MOVE(15, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(18, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(27, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE(44, MOVE_LEAF_STORM),
LEVEL_UP_MOVE(46, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(54, MOVE_POWER_WHIP),
LEVEL_UP_END
};

static const struct LevelUpMove sTentacoolLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 7, MOVE_WRAP),
LEVEL_UP_MOVE( 8, MOVE_CONSTRICT),
LEVEL_UP_MOVE(10, MOVE_ACID),
LEVEL_UP_MOVE(14, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(18, MOVE_POISON_STING),
LEVEL_UP_MOVE(20, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(22, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(22, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(22, MOVE_WATER_GUN),
LEVEL_UP_MOVE(24, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(29, MOVE_BARRIER),
LEVEL_UP_MOVE(32, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(33, MOVE_SCREECH),
LEVEL_UP_MOVE(34, MOVE_POISON_JAB),
LEVEL_UP_MOVE(34, MOVE_BRINE),
LEVEL_UP_MOVE(35, MOVE_HEX),
LEVEL_UP_MOVE(37, MOVE_SURF),
LEVEL_UP_MOVE(45, MOVE_SLUDGE_WAVE),
LEVEL_UP_MOVE(46, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(49, MOVE_WRING_OUT),
LEVEL_UP_END
};

static const struct LevelUpMove sTentacruelLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_REFLECT_TYPE),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_WRING_OUT),
LEVEL_UP_MOVE( 7, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 8, MOVE_CONSTRICT),
LEVEL_UP_MOVE(12, MOVE_ACID),
LEVEL_UP_MOVE(14, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(18, MOVE_POISON_STING),
LEVEL_UP_MOVE(22, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(22, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(22, MOVE_WRAP),
LEVEL_UP_MOVE(22, MOVE_WATER_GUN),
LEVEL_UP_MOVE(24, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(30, MOVE_BARRIER),
LEVEL_UP_MOVE(34, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(36, MOVE_BRINE),
LEVEL_UP_MOVE(37, MOVE_SCREECH),
LEVEL_UP_MOVE(37, MOVE_HEX),
LEVEL_UP_MOVE(38, MOVE_POISON_JAB),
LEVEL_UP_MOVE(41, MOVE_SURF),
LEVEL_UP_MOVE(52, MOVE_SLUDGE_WAVE),
LEVEL_UP_MOVE(54, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(57, MOVE_WRING_OUT),
LEVEL_UP_END
};

static const struct LevelUpMove sGeodudeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 3, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 6, MOVE_BIDE),
LEVEL_UP_MOVE( 7, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE( 7, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(14, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(18, MOVE_ROLLOUT),
LEVEL_UP_MOVE(21, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(22, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(23, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(26, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(26, MOVE_HARDEN),
LEVEL_UP_MOVE(27, MOVE_BULLDOZE),
LEVEL_UP_MOVE(28, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(33, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(37, MOVE_EXPLOSION),
LEVEL_UP_MOVE(40, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(44, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sGravelerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 3, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 6, MOVE_BIDE),
LEVEL_UP_MOVE( 7, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE( 7, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(14, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(18, MOVE_ROLLOUT),
LEVEL_UP_MOVE(22, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(23, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(23, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(27, MOVE_HARDEN),
LEVEL_UP_MOVE(28, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(29, MOVE_BULLDOZE),
LEVEL_UP_MOVE(31, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(39, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(46, MOVE_EXPLOSION),
LEVEL_UP_MOVE(50, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(56, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sGolemLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_MAGNITUDE),
LEVEL_UP_MOVE( 3, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 6, MOVE_BIDE),
LEVEL_UP_MOVE( 7, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE( 7, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(12, MOVE_STEAMROLLER),
LEVEL_UP_MOVE(14, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(22, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(23, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(23, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(26, MOVE_ROLLOUT),
LEVEL_UP_MOVE(27, MOVE_HARDEN),
LEVEL_UP_MOVE(28, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(29, MOVE_BULLDOZE),
LEVEL_UP_MOVE(31, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(39, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(46, MOVE_EXPLOSION),
LEVEL_UP_MOVE(50, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(56, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(64, MOVE_HEAVY_SLAM),
LEVEL_UP_END
};

static const struct LevelUpMove sPonytaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 6, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 9, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_GROWL),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(17, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(18, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(21, MOVE_STOMP),
LEVEL_UP_MOVE(28, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(31, MOVE_AGILITY),
LEVEL_UP_MOVE(34, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(38, MOVE_INFERNO),
LEVEL_UP_MOVE(44, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(44, MOVE_BOUNCE),
LEVEL_UP_MOVE(50, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sRapidashLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SMART_STRIKE),
LEVEL_UP_MOVE( 0, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SMART_STRIKE),
LEVEL_UP_MOVE( 1, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 1, MOVE_POISON_JAB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HORN_DRILL),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 6, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 9, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_GROWL),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(17, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(18, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(21, MOVE_STOMP),
LEVEL_UP_MOVE(28, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(40, MOVE_INFERNO),
LEVEL_UP_MOVE(40, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(46, MOVE_BOUNCE),
LEVEL_UP_MOVE(47, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(56, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sSlowpokeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 9, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 9, MOVE_YAWN),
LEVEL_UP_MOVE(14, MOVE_CONFUSION),
LEVEL_UP_MOVE(19, MOVE_DISABLE),
LEVEL_UP_MOVE(23, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(29, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(30, MOVE_REST),
LEVEL_UP_MOVE(31, MOVE_SURF),
LEVEL_UP_MOVE(35, MOVE_SLACK_OFF),
LEVEL_UP_MOVE(37, MOVE_AMNESIA),
LEVEL_UP_MOVE(42, MOVE_PSYCHIC),
LEVEL_UP_MOVE(47, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(48, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(52, MOVE_HEAL_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sSlowbroLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 6, MOVE_GROWL),
LEVEL_UP_MOVE( 9, MOVE_YAWN),
LEVEL_UP_MOVE(11, MOVE_WATER_GUN),
LEVEL_UP_MOVE(14, MOVE_CONFUSION),
LEVEL_UP_MOVE(19, MOVE_DISABLE),
LEVEL_UP_MOVE(23, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(29, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(30, MOVE_REST),
LEVEL_UP_MOVE(31, MOVE_SURF),
LEVEL_UP_MOVE(35, MOVE_SLACK_OFF),
LEVEL_UP_MOVE(37, MOVE_WITHDRAW),
LEVEL_UP_MOVE(40, MOVE_AMNESIA),
LEVEL_UP_MOVE(46, MOVE_PSYCHIC),
LEVEL_UP_MOVE(52, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(55, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(60, MOVE_HEAL_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sMagnemiteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_METAL_SOUND),
LEVEL_UP_MOVE( 6, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 7, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(13, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(14, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE(20, MOVE_SPARK),
LEVEL_UP_MOVE(21, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(22, MOVE_MAGNET_BOMB),
LEVEL_UP_MOVE(26, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(32, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(33, MOVE_SCREECH),
LEVEL_UP_MOVE(33, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(33, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(33, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(36, MOVE_SWIFT),
LEVEL_UP_MOVE(37, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(38, MOVE_DISCHARGE),
LEVEL_UP_MOVE(39, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(39, MOVE_LOCK_ON),
LEVEL_UP_MOVE(44, MOVE_THUNDER),
LEVEL_UP_MOVE(52, MOVE_ZAP_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sMagnetonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 1, MOVE_METAL_SOUND),
LEVEL_UP_MOVE( 6, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 9, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(11, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE(14, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE(15, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(20, MOVE_SPARK),
LEVEL_UP_MOVE(22, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(22, MOVE_MAGNET_BOMB),
LEVEL_UP_MOVE(26, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(33, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(36, MOVE_SCREECH),
LEVEL_UP_MOVE(36, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(36, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(36, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE(38, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(40, MOVE_SWIFT),
LEVEL_UP_MOVE(42, MOVE_DISCHARGE),
LEVEL_UP_MOVE(43, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(44, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(45, MOVE_LOCK_ON),
LEVEL_UP_MOVE(56, MOVE_THUNDER),
LEVEL_UP_MOVE(63, MOVE_ZAP_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sFarfetchdLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_POISON_JAB),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 4, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(13, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(13, MOVE_CUT),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(14, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(18, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(22, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(28, MOVE_SLASH),
LEVEL_UP_MOVE(32, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(33, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(37, MOVE_ACROBATICS),
LEVEL_UP_MOVE(38, MOVE_AGILITY),
LEVEL_UP_MOVE(40, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE(41, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(43, MOVE_FEINT),
LEVEL_UP_MOVE(45, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(55, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(59, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sDoduoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(13, MOVE_RAGE),
LEVEL_UP_MOVE(14, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(16, MOVE_PURSUIT),
LEVEL_UP_MOVE(19, MOVE_PLUCK),
LEVEL_UP_MOVE(20, MOVE_GROWL),
LEVEL_UP_MOVE(24, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE(27, MOVE_UPROAR),
LEVEL_UP_MOVE(29, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(29, MOVE_ACUPRESSURE),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(34, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(37, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(39, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(46, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(48, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sDodrioLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 1, MOVE_PLUCK),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(13, MOVE_RAGE),
LEVEL_UP_MOVE(14, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(16, MOVE_PURSUIT),
LEVEL_UP_MOVE(19, MOVE_PLUCK),
LEVEL_UP_MOVE(20, MOVE_GROWL),
LEVEL_UP_MOVE(22, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(28, MOVE_UPROAR),
LEVEL_UP_MOVE(29, MOVE_ACUPRESSURE),
LEVEL_UP_MOVE(30, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE(37, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(39, MOVE_AGILITY),
LEVEL_UP_MOVE(42, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(45, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(53, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(58, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sSeelLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(11, MOVE_ICY_WIND),
LEVEL_UP_MOVE(12, MOVE_ENCORE),
LEVEL_UP_MOVE(16, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(22, MOVE_REST),
LEVEL_UP_MOVE(23, MOVE_AQUA_RING),
LEVEL_UP_MOVE(25, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(28, MOVE_AQUA_JET),
LEVEL_UP_MOVE(32, MOVE_WATERFALL),
LEVEL_UP_MOVE(33, MOVE_BRINE),
LEVEL_UP_MOVE(37, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(41, MOVE_DIVE),
LEVEL_UP_MOVE(43, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(45, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(50, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(50, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(53, MOVE_HAIL),
LEVEL_UP_END
};

static const struct LevelUpMove sDewgongLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SHEER_COLD),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_HORN_DRILL),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_SHEER_COLD),
LEVEL_UP_MOVE( 1, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE( 1, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 1, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(11, MOVE_ICY_WIND),
LEVEL_UP_MOVE(12, MOVE_ENCORE),
LEVEL_UP_MOVE(16, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(22, MOVE_REST),
LEVEL_UP_MOVE(23, MOVE_AQUA_RING),
LEVEL_UP_MOVE(25, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(28, MOVE_AQUA_JET),
LEVEL_UP_MOVE(32, MOVE_WATERFALL),
LEVEL_UP_MOVE(33, MOVE_BRINE),
LEVEL_UP_MOVE(34, MOVE_SHEER_COLD),
LEVEL_UP_MOVE(39, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(43, MOVE_DIVE),
LEVEL_UP_MOVE(47, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(51, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(58, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(62, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(65, MOVE_HAIL),
LEVEL_UP_END
};

static const struct LevelUpMove sGrimerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 5, MOVE_HARDEN),
LEVEL_UP_MOVE( 7, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(12, MOVE_DISABLE),
LEVEL_UP_MOVE(18, MOVE_MINIMIZE),
LEVEL_UP_MOVE(18, MOVE_SLUDGE),
LEVEL_UP_MOVE(20, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(27, MOVE_FLING),
LEVEL_UP_MOVE(30, MOVE_POISON_GAS),
LEVEL_UP_MOVE(33, MOVE_SCREECH),
LEVEL_UP_MOVE(35, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(35, MOVE_SLUDGE_WAVE),
LEVEL_UP_MOVE(36, MOVE_TOXIC),
LEVEL_UP_MOVE(40, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(43, MOVE_GUNK_SHOT),
LEVEL_UP_MOVE(46, MOVE_BELCH),
LEVEL_UP_MOVE(49, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sMukLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 7, MOVE_HARDEN),
LEVEL_UP_MOVE( 7, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(14, MOVE_DISABLE),
LEVEL_UP_MOVE(18, MOVE_MINIMIZE),
LEVEL_UP_MOVE(20, MOVE_SLUDGE),
LEVEL_UP_MOVE(20, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(27, MOVE_FLING),
LEVEL_UP_MOVE(30, MOVE_POISON_GAS),
LEVEL_UP_MOVE(33, MOVE_SCREECH),
LEVEL_UP_MOVE(36, MOVE_TOXIC),
LEVEL_UP_MOVE(37, MOVE_SLUDGE_WAVE),
LEVEL_UP_MOVE(38, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(38, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(44, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(48, MOVE_GUNK_SHOT),
LEVEL_UP_MOVE(52, MOVE_BELCH),
LEVEL_UP_MOVE(60, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sShellderLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 4, MOVE_WITHDRAW),
LEVEL_UP_MOVE(12, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(12, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE(18, MOVE_LEER),
LEVEL_UP_MOVE(19, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(22, MOVE_PROTECT),
LEVEL_UP_MOVE(27, MOVE_CLAMP),
LEVEL_UP_MOVE(29, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(30, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(32, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(42, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(44, MOVE_BRINE),
LEVEL_UP_MOVE(46, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(49, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(53, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sCloysterLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE( 0, MOVE_SPIKE_CANNON),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE( 1, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE( 1, MOVE_SPIKES),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 1, MOVE_SPIKE_CANNON),
LEVEL_UP_MOVE( 1, MOVE_BARRIER),
LEVEL_UP_MOVE( 1, MOVE_TWINEEDLE),
LEVEL_UP_MOVE( 1, MOVE_CLAMP),
LEVEL_UP_MOVE(25, MOVE_SPIKE_CANNON),
LEVEL_UP_MOVE(29, MOVE_SPIKES),
LEVEL_UP_MOVE(50, MOVE_ICICLE_CRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sGastlyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 5, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 7, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 8, MOVE_SPITE),
LEVEL_UP_MOVE(10, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(14, MOVE_CURSE),
LEVEL_UP_MOVE(14, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(18, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(19, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(20, MOVE_PAYBACK),
LEVEL_UP_MOVE(21, MOVE_TOXIC),
LEVEL_UP_MOVE(25, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(32, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(34, MOVE_HEX),
LEVEL_UP_MOVE(35, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(37, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(40, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(45, MOVE_NIGHTMARE),
LEVEL_UP_END
};

static const struct LevelUpMove sHaunterLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_SPITE),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 7, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 8, MOVE_SPITE),
LEVEL_UP_MOVE(11, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(14, MOVE_CURSE),
LEVEL_UP_MOVE(14, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(18, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(19, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(21, MOVE_TOXIC),
LEVEL_UP_MOVE(22, MOVE_PAYBACK),
LEVEL_UP_MOVE(25, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE(26, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(29, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(38, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(40, MOVE_HEX),
LEVEL_UP_MOVE(42, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(45, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(50, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(58, MOVE_NIGHTMARE),
LEVEL_UP_END
};

static const struct LevelUpMove sGengarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_PERISH_SONG),
LEVEL_UP_MOVE( 1, MOVE_REFLECT_TYPE),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_SPITE),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 7, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 8, MOVE_SPITE),
LEVEL_UP_MOVE(11, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(14, MOVE_CURSE),
LEVEL_UP_MOVE(14, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(18, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(19, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(21, MOVE_TOXIC),
LEVEL_UP_MOVE(22, MOVE_PAYBACK),
LEVEL_UP_MOVE(25, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE(26, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(29, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(38, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(40, MOVE_HEX),
LEVEL_UP_MOVE(42, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(45, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(50, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(58, MOVE_NIGHTMARE),
LEVEL_UP_END
};

static const struct LevelUpMove sOnixLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 9, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(10, MOVE_BIND),
LEVEL_UP_MOVE(13, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(13, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(15, MOVE_RAGE),
LEVEL_UP_MOVE(16, MOVE_CURSE),
LEVEL_UP_MOVE(17, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(20, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(21, MOVE_SCREECH),
LEVEL_UP_MOVE(22, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(23, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(24, MOVE_HARDEN),
LEVEL_UP_MOVE(27, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(31, MOVE_SLAM),
LEVEL_UP_MOVE(35, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(37, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(39, MOVE_SANDSTORM),
LEVEL_UP_MOVE(40, MOVE_DIG),
LEVEL_UP_MOVE(43, MOVE_IRON_TAIL),
LEVEL_UP_MOVE(50, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(51, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sDrowzeeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 6, MOVE_DISABLE),
LEVEL_UP_MOVE(10, MOVE_CONFUSION),
LEVEL_UP_MOVE(18, MOVE_POISON_GAS),
LEVEL_UP_MOVE(21, MOVE_HEADBUTT),
LEVEL_UP_MOVE(23, MOVE_MEDITATE),
LEVEL_UP_MOVE(24, MOVE_PSYBEAM),
LEVEL_UP_MOVE(29, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(33, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(37, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(40, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(42, MOVE_PSYCHIC),
LEVEL_UP_MOVE(42, MOVE_SWAGGER),
LEVEL_UP_MOVE(43, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(45, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(48, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(56, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(57, MOVE_PSYSHOCK),
LEVEL_UP_END
};

static const struct LevelUpMove sHypnoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BARRIER),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_NIGHTMARE),
LEVEL_UP_MOVE( 1, MOVE_SWITCHEROO),
LEVEL_UP_MOVE( 6, MOVE_DISABLE),
LEVEL_UP_MOVE(10, MOVE_CONFUSION),
LEVEL_UP_MOVE(19, MOVE_POISON_GAS),
LEVEL_UP_MOVE(22, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_MEDITATE),
LEVEL_UP_MOVE(25, MOVE_PSYBEAM),
LEVEL_UP_MOVE(29, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(36, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(37, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(45, MOVE_WISH),
LEVEL_UP_MOVE(45, MOVE_SWAGGER),
LEVEL_UP_MOVE(46, MOVE_PSYCHIC),
LEVEL_UP_MOVE(47, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(52, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(53, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(55, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(57, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(62, MOVE_FUTURE_SIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sKrabbyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 6, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 8, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_HARDEN),
LEVEL_UP_MOVE(16, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(16, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(16, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(24, MOVE_STOMP),
LEVEL_UP_MOVE(26, MOVE_PROTECT),
LEVEL_UP_MOVE(32, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(35, MOVE_SLAM),
LEVEL_UP_MOVE(36, MOVE_GUILLOTINE),
LEVEL_UP_MOVE(39, MOVE_FLAIL),
LEVEL_UP_MOVE(39, MOVE_BRINE),
LEVEL_UP_MOVE(40, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(41, MOVE_CRABHAMMER),
LEVEL_UP_END
};

static const struct LevelUpMove sKinglerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_AMNESIA),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 6, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 8, MOVE_LEER),
LEVEL_UP_MOVE(13, MOVE_HARDEN),
LEVEL_UP_MOVE(16, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(16, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(21, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(24, MOVE_STOMP),
LEVEL_UP_MOVE(28, MOVE_PROTECT),
LEVEL_UP_MOVE(36, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(42, MOVE_SLAM),
LEVEL_UP_MOVE(44, MOVE_GUILLOTINE),
LEVEL_UP_MOVE(48, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(51, MOVE_FLAIL),
LEVEL_UP_MOVE(51, MOVE_BRINE),
LEVEL_UP_MOVE(53, MOVE_CRABHAMMER),
LEVEL_UP_END
};

static const struct LevelUpMove sVoltorbLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 5, MOVE_TACKLE),
LEVEL_UP_MOVE( 7, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE( 8, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(12, MOVE_SPARK),
LEVEL_UP_MOVE(16, MOVE_SCREECH),
LEVEL_UP_MOVE(17, MOVE_ROLLOUT),
LEVEL_UP_MOVE(21, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(24, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(25, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(27, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(30, MOVE_SWIFT),
LEVEL_UP_MOVE(31, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(36, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(37, MOVE_DISCHARGE),
LEVEL_UP_MOVE(43, MOVE_EXPLOSION),
LEVEL_UP_MOVE(43, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(46, MOVE_MIRROR_COAT),
LEVEL_UP_END
};

static const struct LevelUpMove sElectrodeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE( 1, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_MAGNETIC_FLUX),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE( 1, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE( 1, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE( 1, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE( 5, MOVE_TACKLE),
LEVEL_UP_MOVE( 6, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE( 8, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(12, MOVE_SPARK),
LEVEL_UP_MOVE(16, MOVE_SCREECH),
LEVEL_UP_MOVE(17, MOVE_ROLLOUT),
LEVEL_UP_MOVE(21, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(25, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(25, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(27, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(32, MOVE_SWIFT),
LEVEL_UP_MOVE(32, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(36, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(41, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(41, MOVE_DISCHARGE),
LEVEL_UP_MOVE(43, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(45, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(50, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(52, MOVE_EXPLOSION),
LEVEL_UP_MOVE(55, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(57, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(60, MOVE_THUNDER),
LEVEL_UP_MOVE(65, MOVE_ZAP_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sExeggcuteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_BARRAGE),
LEVEL_UP_MOVE( 1, MOVE_UPROAR),
LEVEL_UP_MOVE( 7, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 9, MOVE_REFLECT),
LEVEL_UP_MOVE(13, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(15, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(20, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(21, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(22, MOVE_CONFUSION),
LEVEL_UP_MOVE(22, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(25, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(25, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(27, MOVE_PSYBEAM),
LEVEL_UP_MOVE(35, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(37, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(39, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(43, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(45, MOVE_UPROAR),
LEVEL_UP_MOVE(46, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(47, MOVE_PSYCHIC),
LEVEL_UP_MOVE(51, MOVE_BESTOW),
LEVEL_UP_END
};

static const struct LevelUpMove sExeggutorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_STOMP),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 1, MOVE_SEED_BOMB),
LEVEL_UP_MOVE( 1, MOVE_PSYSHOCK),
LEVEL_UP_MOVE( 1, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE( 1, MOVE_LEAF_STORM),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 1, MOVE_BULLET_SEED),
LEVEL_UP_MOVE( 1, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_UPROAR),
LEVEL_UP_MOVE( 1, MOVE_WORRY_SEED),
LEVEL_UP_MOVE( 1, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 1, MOVE_POWER_WHIP),
LEVEL_UP_MOVE( 1, MOVE_EGG_BOMB),
LEVEL_UP_MOVE( 1, MOVE_BARRAGE),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(17, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(18, MOVE_STOMP),
LEVEL_UP_MOVE(27, MOVE_EGG_BOMB),
LEVEL_UP_MOVE(37, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(47, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sCuboneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BONE_CLUB),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_BONE_CLUB),
LEVEL_UP_MOVE(11, MOVE_HEADBUTT),
LEVEL_UP_MOVE(13, MOVE_LEER),
LEVEL_UP_MOVE(21, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(22, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(24, MOVE_RAGE),
LEVEL_UP_MOVE(26, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(27, MOVE_BONEMERANG),
LEVEL_UP_MOVE(28, MOVE_FLING),
LEVEL_UP_MOVE(32, MOVE_RETALIATE),
LEVEL_UP_MOVE(35, MOVE_THRASH),
LEVEL_UP_MOVE(36, MOVE_BONE_RUSH),
LEVEL_UP_MOVE(39, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(44, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sMarowakLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BONE_CLUB),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_BONE_CLUB),
LEVEL_UP_MOVE(11, MOVE_HEADBUTT),
LEVEL_UP_MOVE(13, MOVE_LEER),
LEVEL_UP_MOVE(23, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(24, MOVE_RAGE),
LEVEL_UP_MOVE(28, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(29, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(30, MOVE_FLING),
LEVEL_UP_MOVE(30, MOVE_BONEMERANG),
LEVEL_UP_MOVE(39, MOVE_RETALIATE),
LEVEL_UP_MOVE(40, MOVE_THRASH),
LEVEL_UP_MOVE(42, MOVE_BONE_RUSH),
LEVEL_UP_MOVE(46, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(55, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sHitmonleeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE( 0, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_LOW_SWEEP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_ROLLING_KICK),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_REVERSAL),
LEVEL_UP_MOVE( 1, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_MEGA_KICK),
LEVEL_UP_MOVE( 1, MOVE_REVENGE),
LEVEL_UP_MOVE( 1, MOVE_MEDITATE),
LEVEL_UP_MOVE( 1, MOVE_JUMP_KICK),
LEVEL_UP_MOVE( 5, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 5, MOVE_MEDITATE),
LEVEL_UP_MOVE( 8, MOVE_LOW_KICK),
LEVEL_UP_MOVE(10, MOVE_ROLLING_KICK),
LEVEL_UP_MOVE(16, MOVE_REVENGE),
LEVEL_UP_MOVE(16, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(17, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(23, MOVE_FEINT),
LEVEL_UP_MOVE(23, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(25, MOVE_FACADE),
LEVEL_UP_MOVE(31, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(31, MOVE_MIND_READER),
LEVEL_UP_MOVE(34, MOVE_HI_JUMP_KICK),
LEVEL_UP_MOVE(35, MOVE_ENDURE),
LEVEL_UP_MOVE(36, MOVE_BLAZE_KICK),
LEVEL_UP_MOVE(36, MOVE_FORESIGHT),
LEVEL_UP_MOVE(44, MOVE_MEGA_KICK),
LEVEL_UP_MOVE(48, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(52, MOVE_REVERSAL),
LEVEL_UP_END
};

static const struct LevelUpMove sHitmonchanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_COMET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_VACUUM_WAVE),
LEVEL_UP_MOVE( 1, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_COMET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_REVENGE),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 1, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 8, MOVE_POWER_UP_PUNCH),
LEVEL_UP_MOVE(11, MOVE_PURSUIT),
LEVEL_UP_MOVE(12, MOVE_AGILITY),
LEVEL_UP_MOVE(13, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE(16, MOVE_REVENGE),
LEVEL_UP_MOVE(16, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE(20, MOVE_FEINT),
LEVEL_UP_MOVE(20, MOVE_SWIFT),
LEVEL_UP_MOVE(25, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE(26, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(26, MOVE_VACUUM_WAVE),
LEVEL_UP_MOVE(30, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE(30, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE(30, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE(35, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(36, MOVE_DETECT),
LEVEL_UP_MOVE(38, MOVE_SKY_UPPERCUT),
LEVEL_UP_MOVE(39, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE(50, MOVE_COUNTER),
LEVEL_UP_MOVE(50, MOVE_FOCUS_PUNCH),
LEVEL_UP_MOVE(53, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sLickitungLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 7, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(10, MOVE_ACID),
LEVEL_UP_MOVE(10, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(17, MOVE_WRAP),
LEVEL_UP_MOVE(21, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(22, MOVE_STOMP),
LEVEL_UP_MOVE(23, MOVE_ROLLOUT),
LEVEL_UP_MOVE(24, MOVE_DISABLE),
LEVEL_UP_MOVE(25, MOVE_BIND),
LEVEL_UP_MOVE(35, MOVE_SLAM),
LEVEL_UP_MOVE(37, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(39, MOVE_ME_FIRST),
LEVEL_UP_MOVE(40, MOVE_THRASH),
LEVEL_UP_MOVE(44, MOVE_SCREECH),
LEVEL_UP_MOVE(44, MOVE_REFRESH),
LEVEL_UP_MOVE(51, MOVE_POWER_WHIP),
LEVEL_UP_MOVE(55, MOVE_WRING_OUT),
LEVEL_UP_MOVE(60, MOVE_BELLY_DRUM),
LEVEL_UP_END
};

static const struct LevelUpMove sKoffingLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 5, MOVE_SMOG),
LEVEL_UP_MOVE(11, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(13, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(14, MOVE_ASSURANCE),
LEVEL_UP_MOVE(20, MOVE_SLUDGE),
LEVEL_UP_MOVE(23, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(28, MOVE_HAZE),
LEVEL_UP_MOVE(31, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(34, MOVE_TOXIC),
LEVEL_UP_MOVE(36, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(40, MOVE_BELCH),
LEVEL_UP_MOVE(40, MOVE_EXPLOSION),
LEVEL_UP_MOVE(46, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(48, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sWeezingLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE( 1, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE( 1, MOVE_SLUDGE),
LEVEL_UP_MOVE( 5, MOVE_SMOG),
LEVEL_UP_MOVE(12, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(13, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(14, MOVE_ASSURANCE),
LEVEL_UP_MOVE(20, MOVE_SLUDGE),
LEVEL_UP_MOVE(23, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(28, MOVE_HAZE),
LEVEL_UP_MOVE(29, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(31, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(36, MOVE_TOXIC),
LEVEL_UP_MOVE(38, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(45, MOVE_EXPLOSION),
LEVEL_UP_MOVE(46, MOVE_BELCH),
LEVEL_UP_MOVE(54, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(57, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sRhyhornLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 7, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(11, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(15, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(15, MOVE_STOMP),
LEVEL_UP_MOVE(18, MOVE_BULLDOZE),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(19, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(27, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(29, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(35, MOVE_DRILL_RUN),
LEVEL_UP_MOVE(35, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(38, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(43, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(47, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(48, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(50, MOVE_LEER),
LEVEL_UP_MOVE(52, MOVE_HORN_DRILL),
LEVEL_UP_MOVE(55, MOVE_MEGAHORN),
LEVEL_UP_END
};

static const struct LevelUpMove sRhydonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HORN_DRILL),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 1, MOVE_MEGAHORN),
LEVEL_UP_MOVE(11, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(13, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(15, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(15, MOVE_STOMP),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(19, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(25, MOVE_BULLDOZE),
LEVEL_UP_MOVE(27, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(29, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(35, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(36, MOVE_DRILL_RUN),
LEVEL_UP_MOVE(39, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(42, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(48, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(50, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(52, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(55, MOVE_LEER),
LEVEL_UP_MOVE(59, MOVE_HORN_DRILL),
LEVEL_UP_MOVE(60, MOVE_MEGAHORN),
LEVEL_UP_END
};

static const struct LevelUpMove sChanseyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 8, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 9, MOVE_REFRESH),
LEVEL_UP_MOVE(12, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(13, MOVE_GROWL),
LEVEL_UP_MOVE(20, MOVE_BESTOW),
LEVEL_UP_MOVE(22, MOVE_MINIMIZE),
LEVEL_UP_MOVE(23, MOVE_SOFT_BOILED),
LEVEL_UP_MOVE(25, MOVE_SING),
LEVEL_UP_MOVE(25, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_FLING),
LEVEL_UP_MOVE(28, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(32, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(33, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(39, MOVE_EGG_BOMB),
LEVEL_UP_MOVE(40, MOVE_WISH),
LEVEL_UP_MOVE(41, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(49, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(50, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sTangelaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 1, MOVE_INGRAIN),
LEVEL_UP_MOVE(10, MOVE_CONFUSION),
LEVEL_UP_MOVE(10, MOVE_ABSORB),
LEVEL_UP_MOVE(14, MOVE_VINE_WHIP),
LEVEL_UP_MOVE(14, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(16, MOVE_GROWTH),
LEVEL_UP_MOVE(16, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(20, MOVE_BIND),
LEVEL_UP_MOVE(22, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(23, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(29, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(31, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(34, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(35, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(39, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(41, MOVE_SLAM),
LEVEL_UP_MOVE(45, MOVE_TICKLE),
LEVEL_UP_MOVE(48, MOVE_WRING_OUT),
LEVEL_UP_MOVE(49, MOVE_AMNESIA),
LEVEL_UP_MOVE(50, MOVE_POWER_WHIP),
LEVEL_UP_MOVE(52, MOVE_INGRAIN),
LEVEL_UP_MOVE(52, MOVE_GRASSY_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sKangaskhanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_COMET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(11, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(16, MOVE_STOMP),
LEVEL_UP_MOVE(18, MOVE_LEER),
LEVEL_UP_MOVE(20, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(23, MOVE_RAGE),
LEVEL_UP_MOVE(24, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE(28, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(31, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(33, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE(35, MOVE_CRUNCH),
LEVEL_UP_MOVE(39, MOVE_ENDURE),
LEVEL_UP_MOVE(41, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(44, MOVE_OUTRAGE),
LEVEL_UP_MOVE(48, MOVE_REVERSAL),
LEVEL_UP_MOVE(52, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sHorseaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 5, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(10, MOVE_LEER),
LEVEL_UP_MOVE(11, MOVE_BUBBLE),
LEVEL_UP_MOVE(13, MOVE_WATER_GUN),
LEVEL_UP_MOVE(17, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(19, MOVE_TWISTER),
LEVEL_UP_MOVE(20, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(20, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(27, MOVE_WATERFALL),
LEVEL_UP_MOVE(29, MOVE_AGILITY),
LEVEL_UP_MOVE(30, MOVE_BRINE),
LEVEL_UP_MOVE(35, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(40, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(42, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(44, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(55, MOVE_RAIN_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sSeadraLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_TWISTER),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 5, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(10, MOVE_LEER),
LEVEL_UP_MOVE(11, MOVE_BUBBLE),
LEVEL_UP_MOVE(13, MOVE_WATER_GUN),
LEVEL_UP_MOVE(17, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(20, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(20, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(24, MOVE_TWISTER),
LEVEL_UP_MOVE(27, MOVE_WATERFALL),
LEVEL_UP_MOVE(30, MOVE_AGILITY),
LEVEL_UP_MOVE(30, MOVE_BRINE),
LEVEL_UP_MOVE(37, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(48, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(49, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(53, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(65, MOVE_RAIN_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sGoldeenLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 6, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(12, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(14, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(22, MOVE_FLAIL),
LEVEL_UP_MOVE(25, MOVE_AQUA_RING),
LEVEL_UP_MOVE(27, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(34, MOVE_WATERFALL),
LEVEL_UP_MOVE(35, MOVE_AGILITY),
LEVEL_UP_MOVE(42, MOVE_HORN_DRILL),
LEVEL_UP_MOVE(43, MOVE_SOAK),
LEVEL_UP_MOVE(48, MOVE_MEGAHORN),
LEVEL_UP_END
};

static const struct LevelUpMove sSeakingLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 1, MOVE_SKULL_BASH),
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 1, MOVE_POISON_JAB),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 7, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(12, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(16, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(22, MOVE_FLAIL),
LEVEL_UP_MOVE(25, MOVE_AQUA_RING),
LEVEL_UP_MOVE(27, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(36, MOVE_WATERFALL),
LEVEL_UP_MOVE(39, MOVE_AGILITY),
LEVEL_UP_MOVE(48, MOVE_HORN_DRILL),
LEVEL_UP_MOVE(50, MOVE_SOAK),
LEVEL_UP_MOVE(58, MOVE_MEGAHORN),
LEVEL_UP_END
};

static const struct LevelUpMove sStaryuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 9, MOVE_PSYWAVE),
LEVEL_UP_MOVE(10, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(18, MOVE_CAMOUFLAGE),
LEVEL_UP_MOVE(19, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(20, MOVE_SWIFT),
LEVEL_UP_MOVE(22, MOVE_HARDEN),
LEVEL_UP_MOVE(24, MOVE_PSYBEAM),
LEVEL_UP_MOVE(24, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(25, MOVE_MINIMIZE),
LEVEL_UP_MOVE(25, MOVE_RECOVER),
LEVEL_UP_MOVE(29, MOVE_BRINE),
LEVEL_UP_MOVE(31, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(37, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(38, MOVE_REFLECT_TYPE),
LEVEL_UP_MOVE(39, MOVE_PSYCHIC),
LEVEL_UP_MOVE(40, MOVE_POWER_GEM),
LEVEL_UP_MOVE(44, MOVE_SURF),
LEVEL_UP_MOVE(50, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(52, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sStarmieLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 1, MOVE_BRINE),
LEVEL_UP_MOVE( 1, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE( 1, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 1, MOVE_SURF),
LEVEL_UP_MOVE( 1, MOVE_RECOVER),
LEVEL_UP_MOVE( 1, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 1, MOVE_SPOTLIGHT),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(31, MOVE_CONFUSE_RAY),
LEVEL_UP_END
};

static const struct LevelUpMove sMrMimeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_POWER_SWAP),
LEVEL_UP_MOVE( 1, MOVE_GUARD_SWAP),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_BARRIER),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 4, MOVE_COPYCAT),
LEVEL_UP_MOVE( 9, MOVE_MEDITATE),
LEVEL_UP_MOVE(10, MOVE_CONFUSION),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(16, MOVE_PSYWAVE),
LEVEL_UP_MOVE(18, MOVE_ENCORE),
LEVEL_UP_MOVE(20, MOVE_PROTECT),
LEVEL_UP_MOVE(21, MOVE_MIMIC),
LEVEL_UP_MOVE(22, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(27, MOVE_PSYBEAM),
LEVEL_UP_MOVE(27, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(27, MOVE_REFLECT),
LEVEL_UP_MOVE(27, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(29, MOVE_RECYCLE),
LEVEL_UP_MOVE(33, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE(36, MOVE_TRICK),
LEVEL_UP_MOVE(40, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(42, MOVE_PSYCHIC),
LEVEL_UP_MOVE(44, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(45, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(45, MOVE_BATON_PASS),
LEVEL_UP_MOVE(52, MOVE_TEETER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sScytherLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_VACUUM_WAVE),
LEVEL_UP_MOVE( 9, MOVE_PURSUIT),
LEVEL_UP_MOVE(11, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(11, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(17, MOVE_LEER),
LEVEL_UP_MOVE(19, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(19, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(22, MOVE_AGILITY),
LEVEL_UP_MOVE(27, MOVE_SLASH),
LEVEL_UP_MOVE(29, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(32, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(38, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(41, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(44, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(45, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(45, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(50, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(53, MOVE_FEINT),
LEVEL_UP_END
};

static const struct LevelUpMove sJynxLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE( 1, MOVE_PERISH_SONG),
LEVEL_UP_MOVE( 1, MOVE_LOVELY_KISS),
LEVEL_UP_MOVE( 5, MOVE_LICK),
LEVEL_UP_MOVE(11, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(16, MOVE_COVET),
LEVEL_UP_MOVE(17, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(18, MOVE_SCREECH),
LEVEL_UP_MOVE(19, MOVE_LOVELY_KISS),
LEVEL_UP_MOVE(20, MOVE_SING),
LEVEL_UP_MOVE(21, MOVE_HEART_STAMP),
LEVEL_UP_MOVE(22, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE(27, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(31, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(32, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(35, MOVE_PSYCHIC),
LEVEL_UP_MOVE(37, MOVE_AVALANCHE),
LEVEL_UP_MOVE(41, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(47, MOVE_WRING_OUT),
LEVEL_UP_MOVE(47, MOVE_THRASH),
LEVEL_UP_MOVE(53, MOVE_PERISH_SONG),
LEVEL_UP_MOVE(57, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sElectabuzzLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 6, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(14, MOVE_SWIFT),
LEVEL_UP_MOVE(16, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(18, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(20, MOVE_LOW_KICK),
LEVEL_UP_MOVE(23, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(27, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE(32, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(36, MOVE_DISCHARGE),
LEVEL_UP_MOVE(38, MOVE_SCREECH),
LEVEL_UP_MOVE(46, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(56, MOVE_THUNDER),
LEVEL_UP_MOVE(64, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sMagmarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE(11, MOVE_LEER),
LEVEL_UP_MOVE(13, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(13, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(14, MOVE_SMOG),
LEVEL_UP_MOVE(15, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(16, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(18, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(23, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(24, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(28, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(28, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE(35, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(35, MOVE_LOW_KICK),
LEVEL_UP_MOVE(45, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(46, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(55, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(64, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sPinsirLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 6, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 6, MOVE_BIND),
LEVEL_UP_MOVE(10, MOVE_SEISMIC_TOSS),
LEVEL_UP_MOVE(14, MOVE_HARDEN),
LEVEL_UP_MOVE(16, MOVE_BUG_BITE),
LEVEL_UP_MOVE(17, MOVE_REVENGE),
LEVEL_UP_MOVE(22, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(23, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(24, MOVE_VITAL_THROW),
LEVEL_UP_MOVE(27, MOVE_STORM_THROW),
LEVEL_UP_MOVE(29, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(36, MOVE_STRENGTH),
LEVEL_UP_MOVE(37, MOVE_SUBMISSION),
LEVEL_UP_MOVE(37, MOVE_THRASH),
LEVEL_UP_MOVE(40, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(46, MOVE_GUILLOTINE),
LEVEL_UP_MOVE(48, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(49, MOVE_SLASH),
LEVEL_UP_END
};

static const struct LevelUpMove sTaurosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_RAGE),
LEVEL_UP_MOVE(12, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(15, MOVE_ASSURANCE),
LEVEL_UP_MOVE(16, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(16, MOVE_PURSUIT),
LEVEL_UP_MOVE(18, MOVE_WORK_UP),
LEVEL_UP_MOVE(18, MOVE_PAYBACK),
LEVEL_UP_MOVE(21, MOVE_STOMP),
LEVEL_UP_MOVE(26, MOVE_LEER),
LEVEL_UP_MOVE(27, MOVE_REST),
LEVEL_UP_MOVE(32, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(38, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(39, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(44, MOVE_SWAGGER),
LEVEL_UP_MOVE(49, MOVE_THRASH),
LEVEL_UP_MOVE(50, MOVE_OUTRAGE),
LEVEL_UP_MOVE(54, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(61, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sMagikarpLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE(15, MOVE_TACKLE),
LEVEL_UP_MOVE(28, MOVE_FLAIL),
LEVEL_UP_END
};

static const struct LevelUpMove sGyaradosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TWISTER),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 4, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(12, MOVE_BRINE),
LEVEL_UP_MOVE(16, MOVE_BIND),
LEVEL_UP_MOVE(19, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(20, MOVE_BITE),
LEVEL_UP_MOVE(21, MOVE_RAGE),
LEVEL_UP_MOVE(22, MOVE_ICE_FANG),
LEVEL_UP_MOVE(23, MOVE_WATERFALL),
LEVEL_UP_MOVE(23, MOVE_LEER),
LEVEL_UP_MOVE(23, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(26, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(29, MOVE_TWISTER),
LEVEL_UP_MOVE(30, MOVE_CRUNCH),
LEVEL_UP_MOVE(33, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(36, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(41, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(41, MOVE_OUTRAGE),
LEVEL_UP_MOVE(42, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(44, MOVE_HURRICANE),
LEVEL_UP_MOVE(48, MOVE_THRASH),
LEVEL_UP_MOVE(50, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sLaprasLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 5, MOVE_SING),
LEVEL_UP_MOVE( 6, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_MIST),
LEVEL_UP_MOVE(14, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(15, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(15, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(19, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(25, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(33, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(36, MOVE_BRINE),
LEVEL_UP_MOVE(36, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(37, MOVE_PERISH_SONG),
LEVEL_UP_MOVE(43, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(45, MOVE_SURF),
LEVEL_UP_MOVE(51, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(52, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(57, MOVE_SHEER_COLD),
LEVEL_UP_MOVE(58, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sDittoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TRANSFORM),
LEVEL_UP_END
};

static const struct LevelUpMove sEeveeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(10, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(12, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(14, MOVE_GROWL),
LEVEL_UP_MOVE(17, MOVE_SWIFT),
LEVEL_UP_MOVE(20, MOVE_REFRESH),
LEVEL_UP_MOVE(22, MOVE_COVET),
LEVEL_UP_MOVE(23, MOVE_BITE),
LEVEL_UP_MOVE(30, MOVE_COPYCAT),
LEVEL_UP_MOVE(31, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(34, MOVE_BATON_PASS),
LEVEL_UP_MOVE(35, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(36, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(37, MOVE_CHARM),
LEVEL_UP_MOVE(41, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(49, MOVE_TRUMP_CARD),
LEVEL_UP_END
};

static const struct LevelUpMove sVaporeonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(10, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(13, MOVE_WATER_GUN),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(21, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(28, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(28, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(29, MOVE_BITE),
LEVEL_UP_MOVE(33, MOVE_AQUA_RING),
LEVEL_UP_MOVE(34, MOVE_HAZE),
LEVEL_UP_MOVE(42, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(45, MOVE_MIST),
LEVEL_UP_MOVE(46, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(51, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sJolteonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(13, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(23, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(28, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(29, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE(31, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(34, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(38, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(42, MOVE_AGILITY),
LEVEL_UP_MOVE(46, MOVE_DISCHARGE),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(51, MOVE_THUNDER),
LEVEL_UP_END
};

static const struct LevelUpMove sFlareonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(10, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(13, MOVE_EMBER),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(24, MOVE_BITE),
LEVEL_UP_MOVE(24, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(28, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(29, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(31, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(34, MOVE_SMOG),
LEVEL_UP_MOVE(44, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(45, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(46, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(46, MOVE_LEER),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(48, MOVE_RAGE),
LEVEL_UP_MOVE(52, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(65, MOVE_FIRE_BLAST),
LEVEL_UP_END
};

static const struct LevelUpMove sPorygonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CONVERSION),
LEVEL_UP_MOVE( 1, MOVE_CONVERSION_2),
LEVEL_UP_MOVE( 1, MOVE_SHARPEN),
LEVEL_UP_MOVE(11, MOVE_PSYBEAM),
LEVEL_UP_MOVE(15, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(15, MOVE_SHARPEN),
LEVEL_UP_MOVE(17, MOVE_AGILITY),
LEVEL_UP_MOVE(18, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(18, MOVE_BARRIER),
LEVEL_UP_MOVE(24, MOVE_RECOVER),
LEVEL_UP_MOVE(25, MOVE_RECYCLE),
LEVEL_UP_MOVE(25, MOVE_CONVERSION_2),
LEVEL_UP_MOVE(27, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(29, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(31, MOVE_CONVERSION),
LEVEL_UP_MOVE(40, MOVE_DISCHARGE),
LEVEL_UP_MOVE(40, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(44, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE(46, MOVE_LOCK_ON),
LEVEL_UP_MOVE(53, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(59, MOVE_ZAP_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sOmanyteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 4, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(10, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(11, MOVE_ROLLOUT),
LEVEL_UP_MOVE(12, MOVE_WATER_GUN),
LEVEL_UP_MOVE(20, MOVE_LEER),
LEVEL_UP_MOVE(25, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(26, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(30, MOVE_BRINE),
LEVEL_UP_MOVE(34, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(36, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(36, MOVE_PROTECT),
LEVEL_UP_MOVE(37, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(43, MOVE_TICKLE),
LEVEL_UP_MOVE(45, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(46, MOVE_SPIKE_CANNON),
LEVEL_UP_MOVE(50, MOVE_SURF),
LEVEL_UP_MOVE(52, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(55, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sOmastarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CRUNCH),
LEVEL_UP_MOVE( 0, MOVE_SPIKE_CANNON),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SPIKE_CANNON),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(12, MOVE_WATER_GUN),
LEVEL_UP_MOVE(16, MOVE_ROLLOUT),
LEVEL_UP_MOVE(20, MOVE_LEER),
LEVEL_UP_MOVE(25, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(26, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(30, MOVE_BRINE),
LEVEL_UP_MOVE(34, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(36, MOVE_PROTECT),
LEVEL_UP_MOVE(37, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(37, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(40, MOVE_SPIKE_CANNON),
LEVEL_UP_MOVE(47, MOVE_TICKLE),
LEVEL_UP_MOVE(53, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(56, MOVE_SURF),
LEVEL_UP_MOVE(64, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(68, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sKabutoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 5, MOVE_SCRATCH),
LEVEL_UP_MOVE( 6, MOVE_HARDEN),
LEVEL_UP_MOVE( 9, MOVE_ABSORB),
LEVEL_UP_MOVE(15, MOVE_LEER),
LEVEL_UP_MOVE(19, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(20, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(24, MOVE_AQUA_JET),
LEVEL_UP_MOVE(28, MOVE_ENDURE),
LEVEL_UP_MOVE(30, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(35, MOVE_BRINE),
LEVEL_UP_MOVE(38, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(39, MOVE_SLASH),
LEVEL_UP_MOVE(41, MOVE_PROTECT),
LEVEL_UP_MOVE(42, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(42, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(45, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(45, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(49, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(50, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(50, MOVE_WRING_OUT),
LEVEL_UP_MOVE(60, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sKabutopsLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 6, MOVE_HARDEN),
LEVEL_UP_MOVE( 9, MOVE_ABSORB),
LEVEL_UP_MOVE(15, MOVE_LEER),
LEVEL_UP_MOVE(19, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(24, MOVE_AQUA_JET),
LEVEL_UP_MOVE(24, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(28, MOVE_ENDURE),
LEVEL_UP_MOVE(30, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(35, MOVE_BRINE),
LEVEL_UP_MOVE(39, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(39, MOVE_SLASH),
LEVEL_UP_MOVE(43, MOVE_PROTECT),
LEVEL_UP_MOVE(45, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(47, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(50, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(51, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(53, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(56, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(63, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(63, MOVE_WRING_OUT),
LEVEL_UP_MOVE(70, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(72, MOVE_NIGHT_SLASH),
LEVEL_UP_END
};

static const struct LevelUpMove sAerodactylLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE(10, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(11, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(14, MOVE_ROAR),
LEVEL_UP_MOVE(18, MOVE_BITE),
LEVEL_UP_MOVE(21, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(21, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(26, MOVE_AGILITY),
LEVEL_UP_MOVE(32, MOVE_CRUNCH),
LEVEL_UP_MOVE(42, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(45, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(47, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(49, MOVE_FLY),
LEVEL_UP_MOVE(49, MOVE_SKY_DROP),
LEVEL_UP_MOVE(50, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(58, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(71, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sSnorlaxLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_RECYCLE),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_SLACK_OFF),
LEVEL_UP_MOVE( 1, MOVE_STOCKPILE),
LEVEL_UP_MOVE( 1, MOVE_SWALLOW),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_FLING),
LEVEL_UP_MOVE( 1, MOVE_METRONOME),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_LAST_RESORT),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_AMNESIA),
LEVEL_UP_MOVE( 1, MOVE_REST),
LEVEL_UP_MOVE( 5, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(13, MOVE_LICK),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_YAWN),
LEVEL_UP_MOVE(19, MOVE_AMNESIA),
LEVEL_UP_MOVE(19, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(23, MOVE_HEADBUTT),
LEVEL_UP_MOVE(25, MOVE_REST),
LEVEL_UP_MOVE(25, MOVE_SNORE),
LEVEL_UP_MOVE(27, MOVE_SLEEP_TALK),
LEVEL_UP_MOVE(32, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(33, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(39, MOVE_SCREECH),
LEVEL_UP_MOVE(39, MOVE_BLOCK),
LEVEL_UP_MOVE(40, MOVE_CRUNCH),
LEVEL_UP_MOVE(41, MOVE_ROLLOUT),
LEVEL_UP_MOVE(41, MOVE_HARDEN),
LEVEL_UP_MOVE(42, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(43, MOVE_HIGH_HORSEPOWER),
LEVEL_UP_MOVE(43, MOVE_COVET),
LEVEL_UP_MOVE(44, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(48, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(52, MOVE_BELCH),
LEVEL_UP_MOVE(52, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE(54, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(65, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sArticunoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_ROOST),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 1, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE( 1, MOVE_TAILWIND),
LEVEL_UP_MOVE( 1, MOVE_SHEER_COLD),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 5, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(10, MOVE_MIST),
LEVEL_UP_MOVE(15, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(16, MOVE_LEER),
LEVEL_UP_MOVE(24, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(27, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(30, MOVE_AGILITY),
LEVEL_UP_MOVE(36, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(36, MOVE_MIND_READER),
LEVEL_UP_MOVE(39, MOVE_REFLECT),
LEVEL_UP_MOVE(45, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(51, MOVE_TAILWIND),
LEVEL_UP_MOVE(58, MOVE_ROOST),
LEVEL_UP_MOVE(63, MOVE_HAIL),
LEVEL_UP_MOVE(69, MOVE_BLIZZARD),
LEVEL_UP_MOVE(72, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE(73, MOVE_HURRICANE),
LEVEL_UP_MOVE(77, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sZapdosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_ROOST),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_DRILL_PECK),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 8, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(16, MOVE_LEER),
LEVEL_UP_MOVE(19, MOVE_PLUCK),
LEVEL_UP_MOVE(27, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(32, MOVE_DETECT),
LEVEL_UP_MOVE(32, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(36, MOVE_CHARGE),
LEVEL_UP_MOVE(47, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(48, MOVE_DISCHARGE),
LEVEL_UP_MOVE(53, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(58, MOVE_ROOST),
LEVEL_UP_MOVE(63, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(69, MOVE_THUNDER),
LEVEL_UP_MOVE(71, MOVE_MAGNETIC_FLUX),
LEVEL_UP_MOVE(72, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE(82, MOVE_ZAP_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sMoltresLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_ROOST),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 1, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE( 8, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(15, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(20, MOVE_AGILITY),
LEVEL_UP_MOVE(23, MOVE_LEER),
LEVEL_UP_MOVE(27, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(30, MOVE_INCINERATE),
LEVEL_UP_MOVE(34, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(36, MOVE_ENDURE),
LEVEL_UP_MOVE(37, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(42, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(57, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE(58, MOVE_ROOST),
LEVEL_UP_MOVE(63, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(69, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(72, MOVE_BURN_UP),
LEVEL_UP_MOVE(73, MOVE_HURRICANE),
LEVEL_UP_MOVE(75, MOVE_SKY_ATTACK),
LEVEL_UP_END
};

static const struct LevelUpMove sDratiniLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 9, MOVE_TWISTER),
LEVEL_UP_MOVE(16, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(24, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(24, MOVE_AGILITY),
LEVEL_UP_MOVE(24, MOVE_SLAM),
LEVEL_UP_MOVE(32, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(37, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(42, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(45, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(49, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(52, MOVE_OUTRAGE),
LEVEL_UP_MOVE(58, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sDragonairLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TWISTER),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(11, MOVE_TWISTER),
LEVEL_UP_MOVE(17, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(24, MOVE_AGILITY),
LEVEL_UP_MOVE(25, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(25, MOVE_SLAM),
LEVEL_UP_MOVE(35, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(42, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(49, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(53, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(59, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(63, MOVE_OUTRAGE),
LEVEL_UP_MOVE(70, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sDragoniteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HURRICANE),
LEVEL_UP_MOVE( 0, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ROOST),
LEVEL_UP_MOVE( 1, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE( 1, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TWISTER),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(11, MOVE_TWISTER),
LEVEL_UP_MOVE(17, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(24, MOVE_AGILITY),
LEVEL_UP_MOVE(25, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(25, MOVE_SLAM),
LEVEL_UP_MOVE(35, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(42, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(49, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(53, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(55, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(56, MOVE_OUTRAGE),
LEVEL_UP_MOVE(59, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(75, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(81, MOVE_HURRICANE),
LEVEL_UP_MOVE(88, MOVE_ROOST),
LEVEL_UP_END
};

static const struct LevelUpMove sMewtwoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LIFE_DEW),
LEVEL_UP_MOVE( 1, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 1, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 1, MOVE_BARRIER),
LEVEL_UP_MOVE( 1, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 8, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(15, MOVE_SWIFT),
LEVEL_UP_MOVE(22, MOVE_PSYBEAM),
LEVEL_UP_MOVE(28, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(31, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE(32, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(41, MOVE_BARRIER),
LEVEL_UP_MOVE(45, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(53, MOVE_POWER_SWAP),
LEVEL_UP_MOVE(53, MOVE_GUARD_SWAP),
LEVEL_UP_MOVE(56, MOVE_AMNESIA),
LEVEL_UP_MOVE(56, MOVE_MIST),
LEVEL_UP_MOVE(59, MOVE_PSYCHIC),
LEVEL_UP_MOVE(60, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(68, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE(71, MOVE_RECOVER),
LEVEL_UP_MOVE(83, MOVE_ME_FIRST),
LEVEL_UP_MOVE(87, MOVE_PSYSTRIKE),
LEVEL_UP_MOVE(88, MOVE_AGILITY),
LEVEL_UP_MOVE(99, MOVE_CALM_MIND),
LEVEL_UP_END
};

static const struct LevelUpMove sMewLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_REFLECT_TYPE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_MIMIC),
LEVEL_UP_MOVE( 1, MOVE_TRANSFORM),
LEVEL_UP_MOVE(11, MOVE_SWIFT),
LEVEL_UP_MOVE(17, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE(33, MOVE_PSYWAVE),
LEVEL_UP_MOVE(36, MOVE_METRONOME),
LEVEL_UP_MOVE(39, MOVE_AMNESIA),
LEVEL_UP_MOVE(40, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(40, MOVE_BARRIER),
LEVEL_UP_MOVE(43, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(55, MOVE_PSYCHIC),
LEVEL_UP_MOVE(57, MOVE_BATON_PASS),
LEVEL_UP_MOVE(63, MOVE_TRANSFORM),
LEVEL_UP_MOVE(70, MOVE_IMPRISON),
LEVEL_UP_MOVE(70, MOVE_ME_FIRST),
LEVEL_UP_MOVE(76, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(96, MOVE_AURA_SPHERE),
LEVEL_UP_END
};

static const struct LevelUpMove sChikoritaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(10, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(13, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(15, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(16, MOVE_REFLECT),
LEVEL_UP_MOVE(20, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(23, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(28, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(31, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(33, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(39, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(42, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(45, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sBayleefLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_POISON_POWDER),
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 6, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(10, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(14, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(15, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(16, MOVE_REFLECT),
LEVEL_UP_MOVE(22, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(24, MOVE_STRENGTH_SAP),
LEVEL_UP_MOVE(26, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(30, MOVE_STOMP),
LEVEL_UP_MOVE(32, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(36, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(38, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(46, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(50, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(54, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sMeganiumLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_WISH),
LEVEL_UP_MOVE( 1, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_POISON_POWDER),
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 6, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(10, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(14, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(15, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(16, MOVE_REFLECT),
LEVEL_UP_MOVE(22, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(22, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(26, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(28, MOVE_STOMP),
LEVEL_UP_MOVE(30, MOVE_STRENGTH_SAP),
LEVEL_UP_MOVE(32, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(34, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(38, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(40, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(42, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(46, MOVE_MOONBLAST),
LEVEL_UP_MOVE(50, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(53, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(55, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(60, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(65, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(70, MOVE_PETAL_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sCyndaquilLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(10, MOVE_EMBER),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(20, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(22, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(28, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(31, MOVE_SWIFT),
LEVEL_UP_MOVE(35, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(40, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(46, MOVE_INFERNO),
LEVEL_UP_MOVE(46, MOVE_ROLLOUT),
LEVEL_UP_MOVE(52, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(56, MOVE_ERUPTION),
LEVEL_UP_MOVE(58, MOVE_BURN_UP),
LEVEL_UP_END
};

static const struct LevelUpMove sQuilavaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 5, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(10, MOVE_EMBER),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(22, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(24, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(33, MOVE_SWIFT),
LEVEL_UP_MOVE(35, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(39, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(46, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(53, MOVE_INFERNO),
LEVEL_UP_MOVE(53, MOVE_ROLLOUT),
LEVEL_UP_MOVE(60, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(65, MOVE_ERUPTION),
LEVEL_UP_MOVE(68, MOVE_BURN_UP),
LEVEL_UP_END
};

static const struct LevelUpMove sTyphlosionLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ERUPTION),
LEVEL_UP_MOVE( 1, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_GYRO_BALL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 5, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(10, MOVE_EMBER),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(22, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(24, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(33, MOVE_SWIFT),
LEVEL_UP_MOVE(35, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(40, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(40, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(45, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(48, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(56, MOVE_INFERNO),
LEVEL_UP_MOVE(56, MOVE_ROLLOUT),
LEVEL_UP_MOVE(56, MOVE_FOCUS_BLAST),
LEVEL_UP_MOVE(64, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(70, MOVE_ERUPTION),
LEVEL_UP_MOVE(74, MOVE_BURN_UP),
LEVEL_UP_END
};

static const struct LevelUpMove sTotodileLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 7, MOVE_RAGE),
LEVEL_UP_MOVE(14, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(20, MOVE_ICE_FANG),
LEVEL_UP_MOVE(22, MOVE_FLAIL),
LEVEL_UP_MOVE(27, MOVE_CRUNCH),
LEVEL_UP_MOVE(29, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(33, MOVE_SLASH),
LEVEL_UP_MOVE(36, MOVE_SCREECH),
LEVEL_UP_MOVE(38, MOVE_THRASH),
LEVEL_UP_MOVE(41, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(46, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(49, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sCroconawLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 7, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 7, MOVE_RAGE),
LEVEL_UP_MOVE(14, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(21, MOVE_ICE_FANG),
LEVEL_UP_MOVE(24, MOVE_FLAIL),
LEVEL_UP_MOVE(30, MOVE_CRUNCH),
LEVEL_UP_MOVE(33, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(37, MOVE_SLASH),
LEVEL_UP_MOVE(41, MOVE_SCREECH),
LEVEL_UP_MOVE(44, MOVE_THRASH),
LEVEL_UP_MOVE(49, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(54, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(57, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sFeraligatrLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 7, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 7, MOVE_RAGE),
LEVEL_UP_MOVE(14, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(21, MOVE_ICE_FANG),
LEVEL_UP_MOVE(24, MOVE_FLAIL),
LEVEL_UP_MOVE(30, MOVE_AGILITY),
LEVEL_UP_MOVE(32, MOVE_CRUNCH),
LEVEL_UP_MOVE(37, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(41, MOVE_SLASH),
LEVEL_UP_MOVE(48, MOVE_SCREECH),
LEVEL_UP_MOVE(53, MOVE_THRASH),
LEVEL_UP_MOVE(60, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(68, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(70, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sSentretLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 7, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(13, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(16, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(20, MOVE_FOLLOW_ME),
LEVEL_UP_MOVE(24, MOVE_SLAM),
LEVEL_UP_MOVE(29, MOVE_REST),
LEVEL_UP_MOVE(31, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(37, MOVE_AMNESIA),
LEVEL_UP_MOVE(39, MOVE_BATON_PASS),
LEVEL_UP_MOVE(42, MOVE_ME_FIRST),
LEVEL_UP_MOVE(47, MOVE_HYPER_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sFurretLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_COIL),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 7, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(13, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(23, MOVE_FOLLOW_ME),
LEVEL_UP_MOVE(28, MOVE_SLAM),
LEVEL_UP_MOVE(34, MOVE_REST),
LEVEL_UP_MOVE(36, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(44, MOVE_AMNESIA),
LEVEL_UP_MOVE(46, MOVE_BATON_PASS),
LEVEL_UP_MOVE(50, MOVE_ME_FIRST),
LEVEL_UP_MOVE(56, MOVE_HYPER_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sHoothootLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 3, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 9, MOVE_PECK),
LEVEL_UP_MOVE(14, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(16, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(17, MOVE_CONFUSION),
LEVEL_UP_MOVE(17, MOVE_REFLECT),
LEVEL_UP_MOVE(20, MOVE_UPROAR),
LEVEL_UP_MOVE(26, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(26, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(31, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(32, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(32, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(34, MOVE_MOONBLAST),
LEVEL_UP_MOVE(41, MOVE_ROOST),
LEVEL_UP_MOVE(41, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(47, MOVE_DREAM_EATER),
LEVEL_UP_END
};

static const struct LevelUpMove sNoctowlLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 1, MOVE_DREAM_EATER),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 5, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 9, MOVE_PECK),
LEVEL_UP_MOVE(17, MOVE_REFLECT),
LEVEL_UP_MOVE(19, MOVE_CONFUSION),
LEVEL_UP_MOVE(20, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(23, MOVE_UPROAR),
LEVEL_UP_MOVE(23, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(28, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(29, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(35, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(36, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(36, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(43, MOVE_MOONBLAST),
LEVEL_UP_MOVE(47, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(49, MOVE_ROOST),
LEVEL_UP_MOVE(58, MOVE_DREAM_EATER),
LEVEL_UP_END
};

static const struct LevelUpMove sLedybaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 6, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(11, MOVE_COMET_PUNCH),
LEVEL_UP_MOVE(15, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(15, MOVE_REFLECT),
LEVEL_UP_MOVE(15, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(16, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE(23, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(23, MOVE_BATON_PASS),
LEVEL_UP_MOVE(30, MOVE_SWIFT),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(36, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(39, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(40, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sLedianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_COMET_PUNCH),
LEVEL_UP_MOVE( 6, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(12, MOVE_COMET_PUNCH),
LEVEL_UP_MOVE(15, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(15, MOVE_REFLECT),
LEVEL_UP_MOVE(15, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(16, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE(26, MOVE_BATON_PASS),
LEVEL_UP_MOVE(27, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(36, MOVE_SWIFT),
LEVEL_UP_MOVE(38, MOVE_AGILITY),
LEVEL_UP_MOVE(42, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(50, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(50, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sSpinarakLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE( 6, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 8, MOVE_INFESTATION),
LEVEL_UP_MOVE( 8, MOVE_CONSTRICT),
LEVEL_UP_MOVE(14, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(15, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(19, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(23, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(26, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(30, MOVE_SPIDER_WEB),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(36, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(42, MOVE_PSYCHIC),
LEVEL_UP_MOVE(43, MOVE_POISON_JAB),
LEVEL_UP_MOVE(45, MOVE_SCREECH),
LEVEL_UP_MOVE(47, MOVE_CROSS_POISON),
LEVEL_UP_MOVE(50, MOVE_STICKY_WEB),
LEVEL_UP_MOVE(54, MOVE_TOXIC_THREAD),
LEVEL_UP_END
};

static const struct LevelUpMove sAriadosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE( 1, MOVE_FELL_STINGER),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE( 6, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 8, MOVE_INFESTATION),
LEVEL_UP_MOVE( 8, MOVE_CONSTRICT),
LEVEL_UP_MOVE(14, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(15, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(19, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(25, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(28, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(34, MOVE_SPIDER_WEB),
LEVEL_UP_MOVE(39, MOVE_AGILITY),
LEVEL_UP_MOVE(41, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(49, MOVE_PSYCHIC),
LEVEL_UP_MOVE(50, MOVE_POISON_JAB),
LEVEL_UP_MOVE(53, MOVE_SCREECH),
LEVEL_UP_MOVE(55, MOVE_CROSS_POISON),
LEVEL_UP_MOVE(58, MOVE_STICKY_WEB),
LEVEL_UP_MOVE(63, MOVE_TOXIC_THREAD),
LEVEL_UP_END
};

static const struct LevelUpMove sCrobatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CROSS_POISON),
LEVEL_UP_MOVE( 1, MOVE_CROSS_POISON),
LEVEL_UP_MOVE( 1, MOVE_TAILWIND),
LEVEL_UP_MOVE( 1, MOVE_TOXIC),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 5, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 8, MOVE_ASTONISH),
LEVEL_UP_MOVE(17, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(19, MOVE_BITE),
LEVEL_UP_MOVE(24, MOVE_SWIFT),
LEVEL_UP_MOVE(26, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(30, MOVE_POISON_FANG),
LEVEL_UP_MOVE(30, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(31, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(34, MOVE_ACROBATICS),
LEVEL_UP_MOVE(35, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(44, MOVE_HAZE),
LEVEL_UP_MOVE(46, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(55, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(61, MOVE_LEECH_LIFE),
LEVEL_UP_END
};

static const struct LevelUpMove sChinchouLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 5, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 6, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(12, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(12, MOVE_BUBBLE),
LEVEL_UP_MOVE(14, MOVE_WATER_GUN),
LEVEL_UP_MOVE(17, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(21, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(21, MOVE_SPARK),
LEVEL_UP_MOVE(21, MOVE_FLAIL),
LEVEL_UP_MOVE(31, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(33, MOVE_DISCHARGE),
LEVEL_UP_MOVE(33, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(37, MOVE_AQUA_RING),
LEVEL_UP_MOVE(40, MOVE_CHARGE),
LEVEL_UP_MOVE(43, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(47, MOVE_ION_DELUGE),
LEVEL_UP_END
};

static const struct LevelUpMove sLanturnLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_STOCKPILE),
LEVEL_UP_MOVE( 0, MOVE_SWALLOW),
LEVEL_UP_MOVE( 0, MOVE_SPIT_UP),
LEVEL_UP_MOVE( 1, MOVE_STOCKPILE),
LEVEL_UP_MOVE( 1, MOVE_SWALLOW),
LEVEL_UP_MOVE( 1, MOVE_SPIT_UP),
LEVEL_UP_MOVE( 1, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_SPOTLIGHT),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 5, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 6, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(12, MOVE_BUBBLE),
LEVEL_UP_MOVE(13, MOVE_WATER_GUN),
LEVEL_UP_MOVE(18, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(20, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(21, MOVE_SPARK),
LEVEL_UP_MOVE(22, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(24, MOVE_FLAIL),
LEVEL_UP_MOVE(27, MOVE_STOCKPILE),
LEVEL_UP_MOVE(27, MOVE_SPIT_UP),
LEVEL_UP_MOVE(27, MOVE_SWALLOW),
LEVEL_UP_MOVE(35, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(37, MOVE_DISCHARGE),
LEVEL_UP_MOVE(37, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(44, MOVE_AQUA_RING),
LEVEL_UP_MOVE(47, MOVE_CHARGE),
LEVEL_UP_MOVE(53, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(55, MOVE_ION_DELUGE),
LEVEL_UP_END
};

static const struct LevelUpMove sPichuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 4, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(10, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(12, MOVE_NUZZLE),
LEVEL_UP_MOVE(12, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(16, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(20, MOVE_CHARM),
LEVEL_UP_END
};

static const struct LevelUpMove sCleffaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 6, MOVE_SING),
LEVEL_UP_MOVE( 7, MOVE_ENCORE),
LEVEL_UP_MOVE( 9, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(12, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(13, MOVE_COPYCAT),
LEVEL_UP_MOVE(16, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(20, MOVE_CHARM),
LEVEL_UP_END
};

static const struct LevelUpMove sIgglybuffLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 7, MOVE_POUND),
LEVEL_UP_MOVE(10, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(12, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(15, MOVE_COPYCAT),
LEVEL_UP_MOVE(16, MOVE_DISABLE),
LEVEL_UP_MOVE(20, MOVE_CHARM),
LEVEL_UP_END
};

static const struct LevelUpMove sTogepiLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 8, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 8, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(11, MOVE_METRONOME),
LEVEL_UP_MOVE(12, MOVE_CHARM),
LEVEL_UP_MOVE(15, MOVE_YAWN),
LEVEL_UP_MOVE(18, MOVE_ENCORE),
LEVEL_UP_MOVE(25, MOVE_BESTOW),
LEVEL_UP_MOVE(26, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_FOLLOW_ME),
LEVEL_UP_MOVE(36, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(36, MOVE_WISH),
LEVEL_UP_MOVE(40, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(41, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(42, MOVE_BATON_PASS),
LEVEL_UP_MOVE(49, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sTogeticLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_LIFE_DEW),
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_METRONOME),
LEVEL_UP_MOVE(10, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(11, MOVE_METRONOME),
LEVEL_UP_MOVE(12, MOVE_CHARM),
LEVEL_UP_MOVE(14, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(15, MOVE_YAWN),
LEVEL_UP_MOVE(18, MOVE_ENCORE),
LEVEL_UP_MOVE(25, MOVE_BESTOW),
LEVEL_UP_MOVE(26, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_FOLLOW_ME),
LEVEL_UP_MOVE(36, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(36, MOVE_WISH),
LEVEL_UP_MOVE(40, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(41, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(42, MOVE_BATON_PASS),
LEVEL_UP_MOVE(49, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sNatuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_TELEPORT),
LEVEL_UP_MOVE(11, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(12, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(18, MOVE_STORED_POWER),
LEVEL_UP_MOVE(22, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(23, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE(29, MOVE_ME_FIRST),
LEVEL_UP_MOVE(31, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(32, MOVE_WISH),
LEVEL_UP_MOVE(34, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(39, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(40, MOVE_POWER_SWAP),
LEVEL_UP_MOVE(41, MOVE_PSYCHIC),
LEVEL_UP_MOVE(42, MOVE_GUARD_SWAP),
LEVEL_UP_END
};

static const struct LevelUpMove sXatuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_TAILWIND),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(11, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(11, MOVE_TELEPORT),
LEVEL_UP_MOVE(12, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(23, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE(24, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(25, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(27, MOVE_TAILWIND),
LEVEL_UP_MOVE(31, MOVE_ME_FIRST),
LEVEL_UP_MOVE(33, MOVE_STORED_POWER),
LEVEL_UP_MOVE(34, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(36, MOVE_WISH),
LEVEL_UP_MOVE(41, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(46, MOVE_POWER_SWAP),
LEVEL_UP_MOVE(46, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(47, MOVE_GUARD_SWAP),
LEVEL_UP_MOVE(51, MOVE_PSYCHIC),
LEVEL_UP_END
};

static const struct LevelUpMove sMareepLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(16, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(18, MOVE_CHARGE),
LEVEL_UP_MOVE(18, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(23, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(25, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(31, MOVE_DISCHARGE),
LEVEL_UP_MOVE(35, MOVE_POWER_GEM),
LEVEL_UP_MOVE(35, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(37, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(39, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(45, MOVE_THUNDER),
LEVEL_UP_END
};

static const struct LevelUpMove sFlaaffyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(10, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(17, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(19, MOVE_CHARGE),
LEVEL_UP_MOVE(20, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(26, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(29, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(36, MOVE_DISCHARGE),
LEVEL_UP_MOVE(40, MOVE_POWER_GEM),
LEVEL_UP_MOVE(41, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(43, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(46, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(54, MOVE_THUNDER),
LEVEL_UP_END
};

static const struct LevelUpMove sAmpharosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_MAGNETIC_FLUX),
LEVEL_UP_MOVE( 1, MOVE_ION_DELUGE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(10, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(17, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(19, MOVE_CHARGE),
LEVEL_UP_MOVE(20, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(26, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(29, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(30, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE(39, MOVE_DISCHARGE),
LEVEL_UP_MOVE(44, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(46, MOVE_POWER_GEM),
LEVEL_UP_MOVE(48, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(53, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(64, MOVE_THUNDER),
LEVEL_UP_MOVE(65, MOVE_DRAGON_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sBellossomLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 0, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 1, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_POISON_POWDER),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE( 1, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_TOXIC),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_MOONLIGHT),
LEVEL_UP_MOVE( 1, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 1, MOVE_LEAF_STORM),
LEVEL_UP_MOVE( 1, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE( 1, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(23, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(39, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE(49, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(52, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(55, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(57, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sMarillLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 7, MOVE_BUBBLE),
LEVEL_UP_MOVE( 9, MOVE_CHARM),
LEVEL_UP_MOVE( 9, MOVE_WATER_GUN),
LEVEL_UP_MOVE(12, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(12, MOVE_SLAM),
LEVEL_UP_MOVE(12, MOVE_ROLLOUT),
LEVEL_UP_MOVE(15, MOVE_BOUNCE),
LEVEL_UP_MOVE(16, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(24, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(24, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(25, MOVE_AQUA_RING),
LEVEL_UP_MOVE(30, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(30, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(37, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(38, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sAzumarillLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 7, MOVE_BUBBLE),
LEVEL_UP_MOVE( 9, MOVE_CHARM),
LEVEL_UP_MOVE( 9, MOVE_WATER_GUN),
LEVEL_UP_MOVE(12, MOVE_SLAM),
LEVEL_UP_MOVE(12, MOVE_ROLLOUT),
LEVEL_UP_MOVE(13, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(15, MOVE_BOUNCE),
LEVEL_UP_MOVE(16, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(27, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(28, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(29, MOVE_AQUA_RING),
LEVEL_UP_MOVE(37, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(37, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(47, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(48, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sSudowoodoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SLAM),
LEVEL_UP_MOVE( 1, MOVE_SLAM),
LEVEL_UP_MOVE( 1, MOVE_STONE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE( 1, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_MIMIC),
LEVEL_UP_MOVE( 6, MOVE_FLAIL),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(15, MOVE_MIMIC),
LEVEL_UP_MOVE(18, MOVE_LOW_KICK),
LEVEL_UP_MOVE(21, MOVE_BLOCK),
LEVEL_UP_MOVE(23, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(23, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE(25, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(30, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(31, MOVE_SLAM),
LEVEL_UP_MOVE(34, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(36, MOVE_COUNTER),
LEVEL_UP_MOVE(44, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(44, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(48, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(49, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sPolitoedLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BOUNCE),
LEVEL_UP_MOVE( 1, MOVE_BOUNCE),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE( 1, MOVE_PERISH_SONG),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE( 1, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_MUD_SHOT),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(33, MOVE_SWAGGER),
LEVEL_UP_MOVE(35, MOVE_PERISH_SONG),
LEVEL_UP_MOVE(37, MOVE_BOUNCE),
LEVEL_UP_MOVE(48, MOVE_HYPER_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sHoppipLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 4, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 6, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 9, MOVE_TACKLE),
LEVEL_UP_MOVE(10, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(12, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(14, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(16, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(19, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(21, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(25, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(28, MOVE_ACROBATICS),
LEVEL_UP_MOVE(30, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(31, MOVE_RAGE_POWDER),
LEVEL_UP_MOVE(35, MOVE_U_TURN),
LEVEL_UP_MOVE(38, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(41, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(44, MOVE_BOUNCE),
LEVEL_UP_MOVE(47, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sSkiploomLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 4, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 6, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 9, MOVE_TACKLE),
LEVEL_UP_MOVE(10, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(12, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(14, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(16, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(20, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(23, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(29, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(32, MOVE_ACROBATICS),
LEVEL_UP_MOVE(35, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(36, MOVE_RAGE_POWDER),
LEVEL_UP_MOVE(41, MOVE_U_TURN),
LEVEL_UP_MOVE(45, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(49, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(53, MOVE_BOUNCE),
LEVEL_UP_MOVE(57, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sJumpluffLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 4, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 6, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 9, MOVE_TACKLE),
LEVEL_UP_MOVE(10, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(12, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(14, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(16, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(20, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(23, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(31, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(34, MOVE_ACROBATICS),
LEVEL_UP_MOVE(39, MOVE_RAGE_POWDER),
LEVEL_UP_MOVE(39, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(45, MOVE_U_TURN),
LEVEL_UP_MOVE(49, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(54, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(59, MOVE_BOUNCE),
LEVEL_UP_MOVE(64, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sAipomLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_ASTONISH),
LEVEL_UP_MOVE(11, MOVE_BATON_PASS),
LEVEL_UP_MOVE(16, MOVE_TICKLE),
LEVEL_UP_MOVE(19, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(24, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_SCREECH),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(32, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(36, MOVE_FLING),
LEVEL_UP_MOVE(39, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(43, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sSunkernLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 5, MOVE_GROWTH),
LEVEL_UP_MOVE( 7, MOVE_INGRAIN),
LEVEL_UP_MOVE( 8, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 9, MOVE_GRASS_WHISTLE),
LEVEL_UP_MOVE(14, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(21, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(21, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(23, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(30, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(31, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(32, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(34, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(36, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(37, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(43, MOVE_SEED_BOMB),
LEVEL_UP_END
};

static const struct LevelUpMove sSunfloraLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FLOWER_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 5, MOVE_GROWTH),
LEVEL_UP_MOVE( 7, MOVE_INGRAIN),
LEVEL_UP_MOVE( 7, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 9, MOVE_GRASS_WHISTLE),
LEVEL_UP_MOVE(14, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(19, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(21, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(22, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(23, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(30, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(31, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(36, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(37, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(38, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(43, MOVE_LEAF_STORM),
LEVEL_UP_MOVE(50, MOVE_PETAL_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sYanmaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 6, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(11, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(14, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE(18, MOVE_DETECT),
LEVEL_UP_MOVE(24, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(28, MOVE_UPROAR),
LEVEL_UP_MOVE(30, MOVE_PURSUIT),
LEVEL_UP_MOVE(33, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(36, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(37, MOVE_SWIFT),
LEVEL_UP_MOVE(42, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(46, MOVE_SCREECH),
LEVEL_UP_MOVE(49, MOVE_U_TURN),
LEVEL_UP_MOVE(54, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(57, MOVE_BUG_BUZZ),
LEVEL_UP_END
};

static const struct LevelUpMove sWooperLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 9, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(14, MOVE_SLAM),
LEVEL_UP_MOVE(19, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(24, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(25, MOVE_AMNESIA),
LEVEL_UP_MOVE(26, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(26, MOVE_YAWN),
LEVEL_UP_MOVE(34, MOVE_MIST),
LEVEL_UP_MOVE(34, MOVE_HAZE),
LEVEL_UP_MOVE(35, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(36, MOVE_TOXIC),
LEVEL_UP_MOVE(39, MOVE_MUDDY_WATER),
LEVEL_UP_END
};

static const struct LevelUpMove sQuagsireLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SHOT),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 5, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 9, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(14, MOVE_SLAM),
LEVEL_UP_MOVE(19, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(28, MOVE_YAWN),
LEVEL_UP_MOVE(28, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(28, MOVE_AMNESIA),
LEVEL_UP_MOVE(38, MOVE_MIST),
LEVEL_UP_MOVE(38, MOVE_HAZE),
LEVEL_UP_MOVE(41, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(42, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(45, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(46, MOVE_TOXIC),
LEVEL_UP_END
};

static const struct LevelUpMove sEspeonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(15, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(22, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_PSYBEAM),
LEVEL_UP_MOVE(38, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(42, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(43, MOVE_MORNING_SUN),
LEVEL_UP_MOVE(45, MOVE_PSYCHIC),
LEVEL_UP_MOVE(48, MOVE_POWER_SWAP),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sUmbreonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SNARL),
LEVEL_UP_MOVE( 0, MOVE_PURSUIT),
LEVEL_UP_MOVE( 1, MOVE_SNARL),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_PURSUIT),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(15, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(22, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(28, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(29, MOVE_ASSURANCE),
LEVEL_UP_MOVE(40, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(43, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(44, MOVE_SCREECH),
LEVEL_UP_MOVE(46, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(48, MOVE_GUARD_SWAP),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sMurkrowLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 6, MOVE_PURSUIT),
LEVEL_UP_MOVE( 9, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_HAZE),
LEVEL_UP_MOVE(15, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(22, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(25, MOVE_ASSURANCE),
LEVEL_UP_MOVE(32, MOVE_TAUNT),
LEVEL_UP_MOVE(34, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(41, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(45, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(50, MOVE_TAILWIND),
LEVEL_UP_MOVE(52, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(61, MOVE_TORMENT),
LEVEL_UP_MOVE(65, MOVE_QUASH),
LEVEL_UP_END
};

static const struct LevelUpMove sSlowkingLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE( 1, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 9, MOVE_YAWN),
LEVEL_UP_MOVE(10, MOVE_WATER_GUN),
LEVEL_UP_MOVE(14, MOVE_CONFUSION),
LEVEL_UP_MOVE(19, MOVE_DISABLE),
LEVEL_UP_MOVE(23, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(27, MOVE_AMNESIA),
LEVEL_UP_MOVE(29, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(30, MOVE_SURF),
LEVEL_UP_MOVE(33, MOVE_SLACK_OFF),
LEVEL_UP_MOVE(36, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(41, MOVE_SWAGGER),
LEVEL_UP_MOVE(42, MOVE_PSYCHIC),
LEVEL_UP_MOVE(42, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(48, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(50, MOVE_TRUMP_CARD),
LEVEL_UP_MOVE(52, MOVE_HEAL_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sMisdreavusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 5, MOVE_SPITE),
LEVEL_UP_MOVE(10, MOVE_ASTONISH),
LEVEL_UP_MOVE(14, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(19, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(23, MOVE_HEX),
LEVEL_UP_MOVE(26, MOVE_PSYBEAM),
LEVEL_UP_MOVE(31, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(35, MOVE_PAYBACK),
LEVEL_UP_MOVE(39, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(44, MOVE_PERISH_SONG),
LEVEL_UP_MOVE(49, MOVE_GRUDGE),
LEVEL_UP_MOVE(53, MOVE_POWER_GEM),
LEVEL_UP_END
};

static const struct LevelUpMove sUnownLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_REFLECT_TYPE),
LEVEL_UP_MOVE( 10, MOVE_NATURE_POWER),
LEVEL_UP_MOVE( 20, MOVE_SECRET_POWER),
LEVEL_UP_MOVE( 30, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE( 40, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 50, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 60, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 70, MOVE_RECOVER),
LEVEL_UP_MOVE( 80, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 90, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 100, MOVE_PSYSHOCK),
LEVEL_UP_END
};

static const struct LevelUpMove sWobbuffetLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_COUNTER),
LEVEL_UP_MOVE( 0, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE( 0, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 0, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_AMNESIA),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE( 1, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 1, MOVE_DESTINY_BOND),
LEVEL_UP_END
};

static const struct LevelUpMove sGirafarigLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWER_SWAP),
LEVEL_UP_MOVE( 1, MOVE_GUARD_SWAP),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 7, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(10, MOVE_CONFUSION),
LEVEL_UP_MOVE(12, MOVE_STOMP),
LEVEL_UP_MOVE(18, MOVE_AGILITY),
LEVEL_UP_MOVE(22, MOVE_ASSURANCE),
LEVEL_UP_MOVE(23, MOVE_PSYBEAM),
LEVEL_UP_MOVE(29, MOVE_BATON_PASS),
LEVEL_UP_MOVE(30, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(38, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(41, MOVE_PSYCHIC),
LEVEL_UP_MOVE(44, MOVE_CRUNCH),
LEVEL_UP_MOVE(46, MOVE_NASTY_PLOT),
LEVEL_UP_END
};

static const struct LevelUpMove sPinecoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 6, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE( 9, MOVE_BUG_BITE),
LEVEL_UP_MOVE(12, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(17, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(21, MOVE_BIDE),
LEVEL_UP_MOVE(22, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(30, MOVE_SPIKES),
LEVEL_UP_MOVE(30, MOVE_PAYBACK),
LEVEL_UP_MOVE(34, MOVE_EXPLOSION),
LEVEL_UP_MOVE(38, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(41, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(45, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sForretressLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE( 0, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE( 1, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE( 1, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE( 1, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE( 1, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 6, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE( 9, MOVE_BUG_BITE),
LEVEL_UP_MOVE(12, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(17, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(21, MOVE_BIDE),
LEVEL_UP_MOVE(22, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(31, MOVE_SPIKES),
LEVEL_UP_MOVE(31, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(32, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(33, MOVE_PAYBACK),
LEVEL_UP_MOVE(39, MOVE_EXPLOSION),
LEVEL_UP_MOVE(44, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(48, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(55, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(59, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(61, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(68, MOVE_HEAVY_SLAM),
LEVEL_UP_END
};

static const struct LevelUpMove sDunsparceLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 6, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 9, MOVE_ROLLOUT),
LEVEL_UP_MOVE(14, MOVE_SPITE),
LEVEL_UP_MOVE(17, MOVE_YAWN),
LEVEL_UP_MOVE(17, MOVE_PURSUIT),
LEVEL_UP_MOVE(18, MOVE_GLARE),
LEVEL_UP_MOVE(19, MOVE_SCREECH),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(29, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(30, MOVE_DRILL_RUN),
LEVEL_UP_MOVE(32, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(32, MOVE_ROOST),
LEVEL_UP_MOVE(38, MOVE_DIG),
LEVEL_UP_MOVE(41, MOVE_COIL),
LEVEL_UP_MOVE(42, MOVE_ENDURE),
LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(43, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(44, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(50, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(51, MOVE_FLAIL),
LEVEL_UP_END
};

static const struct LevelUpMove sGligarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_HARDEN),
LEVEL_UP_MOVE(10, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(15, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(17, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(22, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(22, MOVE_ACROBATICS),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(33, MOVE_U_TURN),
LEVEL_UP_MOVE(34, MOVE_SCREECH),
LEVEL_UP_MOVE(41, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(43, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(45, MOVE_SKY_UPPERCUT),
LEVEL_UP_MOVE(51, MOVE_GUILLOTINE),
LEVEL_UP_END
};

static const struct LevelUpMove sSteelixLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 8, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 9, MOVE_BIND),
LEVEL_UP_MOVE(13, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(13, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(15, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(15, MOVE_RAGE),
LEVEL_UP_MOVE(16, MOVE_CURSE),
LEVEL_UP_MOVE(20, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(21, MOVE_SCREECH),
LEVEL_UP_MOVE(21, MOVE_HARDEN),
LEVEL_UP_MOVE(23, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(25, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(27, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(28, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(30, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(31, MOVE_SLAM),
LEVEL_UP_MOVE(39, MOVE_SANDSTORM),
LEVEL_UP_MOVE(42, MOVE_CRUNCH),
LEVEL_UP_MOVE(43, MOVE_DIG),
LEVEL_UP_MOVE(43, MOVE_IRON_TAIL),
LEVEL_UP_MOVE(50, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(52, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(60, MOVE_MAGNET_RISE),
LEVEL_UP_END
};

static const struct LevelUpMove sSnubbullLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE( 8, MOVE_CHARM),
LEVEL_UP_MOVE(14, MOVE_LICK),
LEVEL_UP_MOVE(19, MOVE_HEADBUTT),
LEVEL_UP_MOVE(25, MOVE_ROAR),
LEVEL_UP_MOVE(31, MOVE_RAGE),
LEVEL_UP_MOVE(37, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(38, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(43, MOVE_PAYBACK),
LEVEL_UP_MOVE(49, MOVE_CRUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sGranbullLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE( 8, MOVE_CHARM),
LEVEL_UP_MOVE(14, MOVE_LICK),
LEVEL_UP_MOVE(19, MOVE_HEADBUTT),
LEVEL_UP_MOVE(27, MOVE_ROAR),
LEVEL_UP_MOVE(35, MOVE_RAGE),
LEVEL_UP_MOVE(43, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(45, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(51, MOVE_PAYBACK),
LEVEL_UP_MOVE(59, MOVE_CRUNCH),
LEVEL_UP_MOVE(67, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sQwilfishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FELL_STINGER),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_SPIKES),
LEVEL_UP_MOVE( 7, MOVE_HARDEN),
LEVEL_UP_MOVE(11, MOVE_WATER_GUN),
LEVEL_UP_MOVE(11, MOVE_MINIMIZE),
LEVEL_UP_MOVE(13, MOVE_BUBBLE),
LEVEL_UP_MOVE(17, MOVE_ROLLOUT),
LEVEL_UP_MOVE(20, MOVE_SPIKES),
LEVEL_UP_MOVE(26, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(28, MOVE_REVENGE),
LEVEL_UP_MOVE(29, MOVE_BRINE),
LEVEL_UP_MOVE(32, MOVE_STOCKPILE),
LEVEL_UP_MOVE(32, MOVE_SPIT_UP),
LEVEL_UP_MOVE(33, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(33, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(42, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(45, MOVE_POISON_JAB),
LEVEL_UP_MOVE(49, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(52, MOVE_TOXIC),
LEVEL_UP_MOVE(54, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(57, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(60, MOVE_ACUPRESSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sScizorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 9, MOVE_PURSUIT),
LEVEL_UP_MOVE(12, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(13, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(18, MOVE_AGILITY),
LEVEL_UP_MOVE(19, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(22, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(27, MOVE_SLASH),
LEVEL_UP_MOVE(27, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(33, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(35, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(38, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(40, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(44, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(45, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(45, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(51, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(61, MOVE_FEINT),
LEVEL_UP_END
};

static const struct LevelUpMove sShuckleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_STICKY_WEB),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE( 8, MOVE_ENCORE),
LEVEL_UP_MOVE(10, MOVE_ROLLOUT),
LEVEL_UP_MOVE(11, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(12, MOVE_WRAP),
LEVEL_UP_MOVE(18, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(19, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(22, MOVE_BIDE),
LEVEL_UP_MOVE(25, MOVE_REST),
LEVEL_UP_MOVE(35, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(37, MOVE_BUG_BITE),
LEVEL_UP_MOVE(39, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(41, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(41, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(43, MOVE_POWER_TRICK),
LEVEL_UP_MOVE(49, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(51, MOVE_STICKY_WEB),
LEVEL_UP_MOVE(54, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sHeracrossLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_ARM_THRUST),
LEVEL_UP_MOVE( 1, MOVE_BULLET_SEED),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ENDURE),
LEVEL_UP_MOVE(10, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(10, MOVE_ENDURE),
LEVEL_UP_MOVE(12, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(15, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(16, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(23, MOVE_COUNTER),
LEVEL_UP_MOVE(25, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(32, MOVE_FEINT),
LEVEL_UP_MOVE(32, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(33, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(40, MOVE_THROAT_CHOP),
LEVEL_UP_MOVE(44, MOVE_REVERSAL),
LEVEL_UP_MOVE(45, MOVE_THRASH),
LEVEL_UP_MOVE(46, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(50, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(50, MOVE_MEGAHORN),
LEVEL_UP_END
};

static const struct LevelUpMove sSneaselLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 6, MOVE_TAUNT),
LEVEL_UP_MOVE( 9, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(13, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(23, MOVE_ICY_WIND),
LEVEL_UP_MOVE(23, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(30, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(30, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(31, MOVE_SCREECH),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(38, MOVE_BEAT_UP),
LEVEL_UP_MOVE(40, MOVE_SNATCH),
LEVEL_UP_MOVE(44, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(45, MOVE_SLASH),
LEVEL_UP_MOVE(48, MOVE_ICE_SHARD),
LEVEL_UP_END
};

static const struct LevelUpMove sTeddiursaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FLING),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_LICK),
LEVEL_UP_MOVE( 9, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(16, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(19, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(22, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(25, MOVE_PLAY_NICE),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(36, MOVE_CHARM),
LEVEL_UP_MOVE(40, MOVE_REST),
LEVEL_UP_MOVE(43, MOVE_SNORE),
LEVEL_UP_MOVE(49, MOVE_THRASH),
LEVEL_UP_MOVE(57, MOVE_FLING),
LEVEL_UP_END
};

static const struct LevelUpMove sUrsaringLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 7, MOVE_LICK),
LEVEL_UP_MOVE( 9, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(16, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(19, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(22, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(25, MOVE_PLAY_NICE),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(38, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(43, MOVE_REST),
LEVEL_UP_MOVE(48, MOVE_SNORE),
LEVEL_UP_MOVE(57, MOVE_THRASH),
LEVEL_UP_MOVE(67, MOVE_HAMMER_ARM),
LEVEL_UP_END
};

static const struct LevelUpMove sSlugmaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 6, MOVE_EMBER),
LEVEL_UP_MOVE(10, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(15, MOVE_HARDEN),
LEVEL_UP_MOVE(15, MOVE_INCINERATE),
LEVEL_UP_MOVE(20, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(24, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(27, MOVE_RECOVER),
LEVEL_UP_MOVE(32, MOVE_AMNESIA),
LEVEL_UP_MOVE(36, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(38, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(45, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(47, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(53, MOVE_EARTH_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sMagcargoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE( 1, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE( 1, MOVE_EXPLOSION),
LEVEL_UP_MOVE( 1, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE( 1, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE( 1, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 6, MOVE_EMBER),
LEVEL_UP_MOVE(10, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(15, MOVE_HARDEN),
LEVEL_UP_MOVE(15, MOVE_INCINERATE),
LEVEL_UP_MOVE(20, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(24, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(29, MOVE_RECOVER),
LEVEL_UP_MOVE(32, MOVE_AMNESIA),
LEVEL_UP_MOVE(34, MOVE_POWER_GEM),
LEVEL_UP_MOVE(36, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(38, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(38, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(45, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(51, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(53, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(63, MOVE_EARTH_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sSwinubLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 4, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 7, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(11, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(18, MOVE_ENDURE),
LEVEL_UP_MOVE(18, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(21, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(25, MOVE_FLAIL),
LEVEL_UP_MOVE(25, MOVE_ICY_WIND),
LEVEL_UP_MOVE(31, MOVE_MIST),
LEVEL_UP_MOVE(32, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(39, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(44, MOVE_AMNESIA),
LEVEL_UP_MOVE(46, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sPiloswineLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 0, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ENDURE),
LEVEL_UP_MOVE( 4, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 8, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(11, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(15, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(18, MOVE_ENDURE),
LEVEL_UP_MOVE(18, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(25, MOVE_ICY_WIND),
LEVEL_UP_MOVE(25, MOVE_ICE_FANG),
LEVEL_UP_MOVE(33, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(34, MOVE_MIST),
LEVEL_UP_MOVE(34, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(46, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(53, MOVE_THRASH),
LEVEL_UP_MOVE(54, MOVE_AMNESIA),
LEVEL_UP_MOVE(55, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sCorsolaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 7, MOVE_BUBBLE),
LEVEL_UP_MOVE(14, MOVE_REFRESH),
LEVEL_UP_MOVE(21, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(24, MOVE_RECOVER),
LEVEL_UP_MOVE(25, MOVE_ENDURE),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(25, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(27, MOVE_AQUA_RING),
LEVEL_UP_MOVE(27, MOVE_BRINE),
LEVEL_UP_MOVE(27, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(29, MOVE_SPIKE_CANNON),
LEVEL_UP_MOVE(29, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(35, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(40, MOVE_FLAIL),
LEVEL_UP_MOVE(41, MOVE_POWER_GEM),
LEVEL_UP_MOVE(47, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(47, MOVE_MIRROR_COAT),
LEVEL_UP_END
};

static const struct LevelUpMove sRemoraidLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(12, MOVE_PSYBEAM),
LEVEL_UP_MOVE(12, MOVE_LOCK_ON),
LEVEL_UP_MOVE(15, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(19, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(19, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(19, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(31, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(32, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(36, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(39, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(45, MOVE_SOAK),
LEVEL_UP_MOVE(46, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sOctilleryLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_OCTAZOOKA),
LEVEL_UP_MOVE( 1, MOVE_OCTAZOOKA),
LEVEL_UP_MOVE( 1, MOVE_GUNK_SHOT),
LEVEL_UP_MOVE( 1, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 1, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE( 6, MOVE_CONSTRICT),
LEVEL_UP_MOVE(12, MOVE_PSYBEAM),
LEVEL_UP_MOVE(15, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(19, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(24, MOVE_LOCK_ON),
LEVEL_UP_MOVE(25, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(25, MOVE_OCTAZOOKA),
LEVEL_UP_MOVE(31, MOVE_WRING_OUT),
LEVEL_UP_MOVE(35, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(37, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(42, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(47, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(56, MOVE_SOAK),
LEVEL_UP_MOVE(57, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sDelibirdLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PRESENT),
LEVEL_UP_MOVE( 1, MOVE_HAPPY_HOUR),
LEVEL_UP_MOVE( 1, MOVE_PAY_DAY),
LEVEL_UP_MOVE(25, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(35, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(45, MOVE_ICE_SHARD),
LEVEL_UP_END
};

static const struct LevelUpMove sMantineLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 1, MOVE_BULLET_SEED),
LEVEL_UP_MOVE( 1, MOVE_ROOST),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE( 4, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(14, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(19, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(19, MOVE_HEADBUTT),
LEVEL_UP_MOVE(20, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(21, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(24, MOVE_AGILITY),
LEVEL_UP_MOVE(27, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(32, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(34, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(39, MOVE_AQUA_RING),
LEVEL_UP_MOVE(42, MOVE_BOUNCE),
LEVEL_UP_MOVE(48, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sSkarmoryLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(10, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(13, MOVE_SWIFT),
LEVEL_UP_MOVE(16, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(17, MOVE_AGILITY),
LEVEL_UP_MOVE(20, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(20, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(20, MOVE_FEINT),
LEVEL_UP_MOVE(32, MOVE_STEEL_WING),
LEVEL_UP_MOVE(34, MOVE_SPIKES),
LEVEL_UP_MOVE(35, MOVE_SLASH),
LEVEL_UP_MOVE(36, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(37, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(38, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(42, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(48, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(49, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(52, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sHoundourLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 4, MOVE_HOWL),
LEVEL_UP_MOVE( 9, MOVE_SMOG),
LEVEL_UP_MOVE(13, MOVE_ROAR),
LEVEL_UP_MOVE(17, MOVE_BITE),
LEVEL_UP_MOVE(21, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(25, MOVE_BEAT_UP),
LEVEL_UP_MOVE(28, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(32, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(37, MOVE_EMBARGO),
LEVEL_UP_MOVE(40, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(42, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(48, MOVE_CRUNCH),
LEVEL_UP_MOVE(52, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(56, MOVE_INFERNO),
LEVEL_UP_END
};

static const struct LevelUpMove sHoundoomLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_INFERNO),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_HOWL),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 4, MOVE_HOWL),
LEVEL_UP_MOVE( 9, MOVE_SMOG),
LEVEL_UP_MOVE(13, MOVE_ROAR),
LEVEL_UP_MOVE(17, MOVE_BITE),
LEVEL_UP_MOVE(22, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(26, MOVE_BEAT_UP),
LEVEL_UP_MOVE(30, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(36, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(41, MOVE_EMBARGO),
LEVEL_UP_MOVE(45, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(48, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(55, MOVE_CRUNCH),
LEVEL_UP_MOVE(60, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(65, MOVE_INFERNO),
LEVEL_UP_END
};

static const struct LevelUpMove sKingdraLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_TWISTER),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 5, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE(11, MOVE_BUBBLE),
LEVEL_UP_MOVE(14, MOVE_WATER_GUN),
LEVEL_UP_MOVE(16, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(20, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(21, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(24, MOVE_TWISTER),
LEVEL_UP_MOVE(30, MOVE_AGILITY),
LEVEL_UP_MOVE(30, MOVE_BRINE),
LEVEL_UP_MOVE(37, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(48, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(49, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(53, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(65, MOVE_RAIN_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sPhanpyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 8, MOVE_FLAIL),
LEVEL_UP_MOVE( 9, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(17, MOVE_ROLLOUT),
LEVEL_UP_MOVE(17, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(17, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(24, MOVE_SLAM),
LEVEL_UP_MOVE(28, MOVE_ENDURE),
LEVEL_UP_MOVE(33, MOVE_CHARM),
LEVEL_UP_MOVE(37, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sDonphanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 9, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(12, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(12, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(17, MOVE_ROLLOUT),
LEVEL_UP_MOVE(17, MOVE_FLAIL),
LEVEL_UP_MOVE(22, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(24, MOVE_SLAM),
LEVEL_UP_MOVE(25, MOVE_ASSURANCE),
LEVEL_UP_MOVE(25, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(38, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(45, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(52, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sPorygon2LevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CONVERSION),
LEVEL_UP_MOVE( 1, MOVE_RECYCLE),
LEVEL_UP_MOVE( 1, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE( 1, MOVE_CONVERSION_2),
LEVEL_UP_MOVE(11, MOVE_PSYBEAM),
LEVEL_UP_MOVE(15, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(17, MOVE_AGILITY),
LEVEL_UP_MOVE(23, MOVE_RECOVER),
LEVEL_UP_MOVE(23, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(24, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(25, MOVE_CONVERSION_2),
LEVEL_UP_MOVE(29, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(35, MOVE_RECYCLE),
LEVEL_UP_MOVE(40, MOVE_DISCHARGE),
LEVEL_UP_MOVE(46, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE(46, MOVE_LOCK_ON),
LEVEL_UP_MOVE(53, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(59, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(66, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sStantlerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ME_FIRST),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(11, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(14, MOVE_STOMP),
LEVEL_UP_MOVE(18, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(24, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(29, MOVE_CALM_MIND),
LEVEL_UP_MOVE(32, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE(38, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(43, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(47, MOVE_IMPRISON),
LEVEL_UP_MOVE(50, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(54, MOVE_ME_FIRST),
LEVEL_UP_END
};

static const struct LevelUpMove sSmeargleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SKETCH),
LEVEL_UP_MOVE( 11, MOVE_SKETCH),
LEVEL_UP_MOVE( 21, MOVE_SKETCH),
LEVEL_UP_MOVE( 31, MOVE_SKETCH),
LEVEL_UP_MOVE( 41, MOVE_SKETCH),
LEVEL_UP_MOVE(51, MOVE_SKETCH),
LEVEL_UP_MOVE(61, MOVE_SKETCH),
LEVEL_UP_MOVE(71, MOVE_SKETCH),
LEVEL_UP_MOVE(81, MOVE_SKETCH),
LEVEL_UP_MOVE(91, MOVE_SKETCH),
LEVEL_UP_END
};

static const struct LevelUpMove sTyrogueLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sHitmontopLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_TRIPLE_KICK),
LEVEL_UP_MOVE( 0, MOVE_ROLLING_KICK),
LEVEL_UP_MOVE( 1, MOVE_TRIPLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_ROLLING_KICK),
LEVEL_UP_MOVE( 1, MOVE_ENDEAVOR),
LEVEL_UP_MOVE( 1, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_DETECT),
LEVEL_UP_MOVE( 1, MOVE_REVENGE),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(10, MOVE_PURSUIT),
LEVEL_UP_MOVE(12, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(16, MOVE_REVENGE),
LEVEL_UP_MOVE(23, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(23, MOVE_TRIPLE_KICK),
LEVEL_UP_MOVE(24, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(29, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(31, MOVE_FEINT),
LEVEL_UP_MOVE(32, MOVE_DIG),
LEVEL_UP_MOVE(32, MOVE_COUNTER),
LEVEL_UP_MOVE(34, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(34, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(36, MOVE_DETECT),
LEVEL_UP_MOVE(47, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(52, MOVE_ENDEAVOR),
LEVEL_UP_END
};

static const struct LevelUpMove sSmoochumLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 5, MOVE_LICK),
LEVEL_UP_MOVE( 9, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(14, MOVE_CONFUSION),
LEVEL_UP_MOVE(16, MOVE_COVET),
LEVEL_UP_MOVE(17, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(19, MOVE_SING),
LEVEL_UP_MOVE(21, MOVE_HEART_STAMP),
LEVEL_UP_MOVE(26, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(28, MOVE_COPYCAT),
LEVEL_UP_MOVE(28, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE(30, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(30, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(33, MOVE_AVALANCHE),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(44, MOVE_PERISH_SONG),
LEVEL_UP_MOVE(48, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sElekidLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 8, MOVE_CHARGE),
LEVEL_UP_MOVE(14, MOVE_SWIFT),
LEVEL_UP_MOVE(16, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(18, MOVE_LOW_KICK),
LEVEL_UP_MOVE(19, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(23, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(26, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE(30, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(33, MOVE_SCREECH),
LEVEL_UP_MOVE(33, MOVE_DISCHARGE),
LEVEL_UP_MOVE(40, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(46, MOVE_THUNDER),
LEVEL_UP_END
};

static const struct LevelUpMove sMagbyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE( 7, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(13, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(13, MOVE_SMOG),
LEVEL_UP_MOVE(15, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(16, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(16, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(23, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(24, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(26, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(27, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE(33, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(36, MOVE_LOW_KICK),
LEVEL_UP_MOVE(39, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(39, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(46, MOVE_FIRE_BLAST),
LEVEL_UP_END
};

static const struct LevelUpMove sMiltankLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(10, MOVE_STOMP),
LEVEL_UP_MOVE(16, MOVE_ROLLOUT),
LEVEL_UP_MOVE(17, MOVE_BIDE),
LEVEL_UP_MOVE(19, MOVE_MILK_DRINK),
LEVEL_UP_MOVE(25, MOVE_HEADBUTT),
LEVEL_UP_MOVE(29, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(31, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(35, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(39, MOVE_HEAL_BELL),
LEVEL_UP_MOVE(41, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(45, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(50, MOVE_CHARM),
LEVEL_UP_MOVE(52, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(55, MOVE_HIGH_HORSEPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sBlisseyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 8, MOVE_REFRESH),
LEVEL_UP_MOVE(12, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(20, MOVE_BESTOW),
LEVEL_UP_MOVE(21, MOVE_MINIMIZE),
LEVEL_UP_MOVE(23, MOVE_SING),
LEVEL_UP_MOVE(23, MOVE_SOFT_BOILED),
LEVEL_UP_MOVE(25, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_FLING),
LEVEL_UP_MOVE(31, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(32, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(33, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(38, MOVE_EGG_BOMB),
LEVEL_UP_MOVE(40, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(48, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(50, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sRaikouLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 8, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_ROAR),
LEVEL_UP_MOVE(23, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(36, MOVE_HOWL),
LEVEL_UP_MOVE(42, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE(45, MOVE_CRUNCH),
LEVEL_UP_MOVE(45, MOVE_REFLECT),
LEVEL_UP_MOVE(55, MOVE_DISCHARGE),
LEVEL_UP_MOVE(57, MOVE_CALM_MIND),
LEVEL_UP_MOVE(58, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(69, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(78, MOVE_THUNDER),
LEVEL_UP_MOVE(78, MOVE_ZAP_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sEnteiLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SACRED_FIRE),
LEVEL_UP_MOVE( 1, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_ERUPTION),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 6, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE( 8, MOVE_EMBER),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_ROAR),
LEVEL_UP_MOVE(23, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(31, MOVE_STOMP),
LEVEL_UP_MOVE(36, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(38, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(42, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(42, MOVE_CRUNCH),
LEVEL_UP_MOVE(50, MOVE_SWAGGER),
LEVEL_UP_MOVE(55, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(57, MOVE_CALM_MIND),
LEVEL_UP_MOVE(58, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(66, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(71, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(82, MOVE_ERUPTION),
LEVEL_UP_END
};

static const struct LevelUpMove sSuicuneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SHEER_COLD),
LEVEL_UP_MOVE( 1, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_TAILWIND),
LEVEL_UP_MOVE( 6, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 9, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(11, MOVE_WATER_GUN),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(23, MOVE_ROAR),
LEVEL_UP_MOVE(23, MOVE_GUST),
LEVEL_UP_MOVE(30, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(32, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(38, MOVE_MIST),
LEVEL_UP_MOVE(42, MOVE_ICE_FANG),
LEVEL_UP_MOVE(42, MOVE_CRUNCH),
LEVEL_UP_MOVE(49, MOVE_TAILWIND),
LEVEL_UP_MOVE(50, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(54, MOVE_SURF),
LEVEL_UP_MOVE(57, MOVE_CALM_MIND),
LEVEL_UP_MOVE(58, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(71, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(82, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sLarvitarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 3, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(14, MOVE_SCREECH),
LEVEL_UP_MOVE(14, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(16, MOVE_SANDSTORM),
LEVEL_UP_MOVE(17, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(18, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(20, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(24, MOVE_PAYBACK),
LEVEL_UP_MOVE(28, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(29, MOVE_THRASH),
LEVEL_UP_MOVE(36, MOVE_CRUNCH),
LEVEL_UP_MOVE(40, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(42, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(50, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sPupitarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_PAYBACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_SANDSTORM),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(14, MOVE_SCREECH),
LEVEL_UP_MOVE(14, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(17, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(18, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(18, MOVE_SANDSTORM),
LEVEL_UP_MOVE(20, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(29, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(31, MOVE_THRASH),
LEVEL_UP_MOVE(38, MOVE_PAYBACK),
LEVEL_UP_MOVE(39, MOVE_CRUNCH),
LEVEL_UP_MOVE(46, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(50, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(60, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sTyranitarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_PAYBACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_SANDSTORM),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(14, MOVE_SCREECH),
LEVEL_UP_MOVE(14, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(17, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(18, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(18, MOVE_SANDSTORM),
LEVEL_UP_MOVE(20, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(29, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(31, MOVE_THRASH),
LEVEL_UP_MOVE(38, MOVE_PAYBACK),
LEVEL_UP_MOVE(39, MOVE_CRUNCH),
LEVEL_UP_MOVE(47, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(51, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(66, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(71, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sLugiaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_WHIRLWIND),
LEVEL_UP_MOVE( 1, MOVE_WEATHER_BALL),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_AEROBLAST),
LEVEL_UP_MOVE( 9, MOVE_MIST),
LEVEL_UP_MOVE(12, MOVE_GUST),
LEVEL_UP_MOVE(15, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(33, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(35, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(44, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(47, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(49, MOVE_RECOVER),
LEVEL_UP_MOVE(53, MOVE_SWIFT),
LEVEL_UP_MOVE(56, MOVE_AEROBLAST),
LEVEL_UP_MOVE(56, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(63, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(68, MOVE_CALM_MIND),
LEVEL_UP_MOVE(75, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(77, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(82, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(95, MOVE_SKY_ATTACK),
LEVEL_UP_END
};

static const struct LevelUpMove sHoOhLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_WHIRLWIND),
LEVEL_UP_MOVE( 1, MOVE_WEATHER_BALL),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_SACRED_FIRE),
LEVEL_UP_MOVE( 9, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(12, MOVE_GUST),
LEVEL_UP_MOVE(15, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(33, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(35, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(44, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(47, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(49, MOVE_RECOVER),
LEVEL_UP_MOVE(53, MOVE_SWIFT),
LEVEL_UP_MOVE(56, MOVE_SACRED_FIRE),
LEVEL_UP_MOVE(56, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(63, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(68, MOVE_CALM_MIND),
LEVEL_UP_MOVE(75, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(77, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(82, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(95, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE(99, MOVE_BURN_UP),
LEVEL_UP_END
};

static const struct LevelUpMove sCelebiLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_HEAL_BELL),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 1, MOVE_RECOVER),
LEVEL_UP_MOVE(10, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(15, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(27, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(31, MOVE_BATON_PASS),
LEVEL_UP_MOVE(40, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(46, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(50, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(55, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(60, MOVE_RECOVER),
LEVEL_UP_MOVE(61, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(75, MOVE_HEALING_WISH),
LEVEL_UP_MOVE(84, MOVE_LEAF_STORM),
LEVEL_UP_MOVE(88, MOVE_PERISH_SONG),
LEVEL_UP_END
};

static const struct LevelUpMove sTreeckoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 3, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(16, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(18, MOVE_ASSURANCE),
LEVEL_UP_MOVE(24, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(27, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(29, MOVE_DETECT),
LEVEL_UP_MOVE(29, MOVE_AGILITY),
LEVEL_UP_MOVE(30, MOVE_SLAM),
LEVEL_UP_MOVE(30, MOVE_SCREECH),
LEVEL_UP_MOVE(32, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(39, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(39, MOVE_LEAF_STORM),
LEVEL_UP_MOVE(40, MOVE_ENERGY_BALL),
LEVEL_UP_END
};

static const struct LevelUpMove sGrovyleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_X_SCISSOR),
LEVEL_UP_MOVE( 1, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE(10, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(16, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(17, MOVE_PURSUIT),
LEVEL_UP_MOVE(20, MOVE_ASSURANCE),
LEVEL_UP_MOVE(25, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(28, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(31, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(33, MOVE_DETECT),
LEVEL_UP_MOVE(33, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_SLAM),
LEVEL_UP_MOVE(35, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(37, MOVE_SCREECH),
LEVEL_UP_MOVE(43, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(50, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(51, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(57, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sSceptileLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE( 1, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_X_SCISSOR),
LEVEL_UP_MOVE( 1, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEAF_STORM),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE( 7, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(16, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(17, MOVE_PURSUIT),
LEVEL_UP_MOVE(20, MOVE_ASSURANCE),
LEVEL_UP_MOVE(25, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(25, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(29, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(32, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(33, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_DETECT),
LEVEL_UP_MOVE(35, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(36, MOVE_SLAM),
LEVEL_UP_MOVE(36, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE(40, MOVE_SCREECH),
LEVEL_UP_MOVE(56, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(56, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(64, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sTorchicLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(12, MOVE_DETECT),
LEVEL_UP_MOVE(15, MOVE_PECK),
LEVEL_UP_MOVE(16, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(18, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(18, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(19, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(23, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(24, MOVE_BOUNCE),
LEVEL_UP_MOVE(28, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(33, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(36, MOVE_REVERSAL),
LEVEL_UP_MOVE(38, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(39, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(39, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sCombuskenLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE( 1, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(10, MOVE_EMBER),
LEVEL_UP_MOVE(12, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(12, MOVE_DETECT),
LEVEL_UP_MOVE(16, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(16, MOVE_PECK),
LEVEL_UP_MOVE(16, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(20, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(21, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(30, MOVE_BOUNCE),
LEVEL_UP_MOVE(30, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(34, MOVE_SLASH),
LEVEL_UP_MOVE(34, MOVE_BULK_UP),
LEVEL_UP_MOVE(40, MOVE_BLAZE_KICK),
LEVEL_UP_MOVE(44, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(50, MOVE_REVERSAL),
LEVEL_UP_MOVE(50, MOVE_SKY_UPPERCUT),
LEVEL_UP_MOVE(55, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sBlazikenLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BLAZE_KICK),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE( 1, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE( 1, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BLAZE_KICK),
LEVEL_UP_MOVE( 1, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE( 1, MOVE_HI_JUMP_KICK),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(10, MOVE_EMBER),
LEVEL_UP_MOVE(12, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(12, MOVE_DETECT),
LEVEL_UP_MOVE(16, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(16, MOVE_PECK),
LEVEL_UP_MOVE(16, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(20, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(21, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(30, MOVE_BOUNCE),
LEVEL_UP_MOVE(30, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(35, MOVE_BULK_UP),
LEVEL_UP_MOVE(36, MOVE_SLASH),
LEVEL_UP_MOVE(38, MOVE_BLAZE_KICK),
LEVEL_UP_MOVE(49, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(49, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(56, MOVE_REVERSAL),
LEVEL_UP_MOVE(58, MOVE_SKY_UPPERCUT),
LEVEL_UP_MOVE(64, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sMudkipLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 6, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 6, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(14, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(15, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(15, MOVE_BIDE),
LEVEL_UP_MOVE(17, MOVE_FORESIGHT),
LEVEL_UP_MOVE(18, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(21, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(22, MOVE_MUD_SPORT),
LEVEL_UP_MOVE(26, MOVE_PROTECT),
LEVEL_UP_MOVE(27, MOVE_AMNESIA),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(30, MOVE_SURF),
LEVEL_UP_MOVE(33, MOVE_SCREECH),
LEVEL_UP_MOVE(33, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(40, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(42, MOVE_ENDEAVOR),
LEVEL_UP_END
};

static const struct LevelUpMove sMarshtompLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_MUD_SHOT),
LEVEL_UP_MOVE( 1, MOVE_MUD_SHOT),
LEVEL_UP_MOVE( 1, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE( 1, MOVE_SURF),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 6, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 8, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 9, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(15, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(15, MOVE_BIDE),
LEVEL_UP_MOVE(16, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(17, MOVE_FORESIGHT),
LEVEL_UP_MOVE(20, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(24, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(25, MOVE_MUD_SPORT),
LEVEL_UP_MOVE(26, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(30, MOVE_PROTECT),
LEVEL_UP_MOVE(32, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(35, MOVE_AMNESIA),
LEVEL_UP_MOVE(38, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(45, MOVE_SCREECH),
LEVEL_UP_MOVE(46, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(51, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(55, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sSwampertLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SHOT),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE( 1, MOVE_SURF),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 6, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 8, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 9, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(15, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(15, MOVE_BIDE),
LEVEL_UP_MOVE(16, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(17, MOVE_FORESIGHT),
LEVEL_UP_MOVE(20, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(24, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(25, MOVE_MUD_SPORT),
LEVEL_UP_MOVE(26, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(31, MOVE_PROTECT),
LEVEL_UP_MOVE(33, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(35, MOVE_AMNESIA),
LEVEL_UP_MOVE(40, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(49, MOVE_SCREECH),
LEVEL_UP_MOVE(51, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(58, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(63, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(67, MOVE_HAMMER_ARM),
LEVEL_UP_END
};

static const struct LevelUpMove sPoochyenaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 4, MOVE_HOWL),
LEVEL_UP_MOVE( 8, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(19, MOVE_ROAR),
LEVEL_UP_MOVE(23, MOVE_SWAGGER),
LEVEL_UP_MOVE(26, MOVE_ASSURANCE),
LEVEL_UP_MOVE(30, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(35, MOVE_TAUNT),
LEVEL_UP_MOVE(36, MOVE_EMBARGO),
LEVEL_UP_MOVE(37, MOVE_YAWN),
LEVEL_UP_MOVE(41, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(45, MOVE_THIEF),
LEVEL_UP_MOVE(46, MOVE_CRUNCH),
LEVEL_UP_MOVE(46, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(46, MOVE_PLAY_ROUGH),
LEVEL_UP_END
};

static const struct LevelUpMove sMightyenaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SNARL),
LEVEL_UP_MOVE( 1, MOVE_SNARL),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_THIEF),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HOWL),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 4, MOVE_HOWL),
LEVEL_UP_MOVE( 8, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(18, MOVE_SNARL),
LEVEL_UP_MOVE(20, MOVE_ROAR),
LEVEL_UP_MOVE(25, MOVE_SWAGGER),
LEVEL_UP_MOVE(29, MOVE_ASSURANCE),
LEVEL_UP_MOVE(33, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(40, MOVE_TAUNT),
LEVEL_UP_MOVE(42, MOVE_EMBARGO),
LEVEL_UP_MOVE(44, MOVE_YAWN),
LEVEL_UP_MOVE(47, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(48, MOVE_CRUNCH),
LEVEL_UP_MOVE(56, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(56, MOVE_THIEF),
LEVEL_UP_MOVE(58, MOVE_SUCKER_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sZigzagoonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 8, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(10, MOVE_HEADBUTT),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(15, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(19, MOVE_MUD_SPORT),
LEVEL_UP_MOVE(21, MOVE_COVET),
LEVEL_UP_MOVE(21, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(26, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(29, MOVE_BESTOW),
LEVEL_UP_MOVE(32, MOVE_REST),
LEVEL_UP_MOVE(32, MOVE_FLAIL),
LEVEL_UP_MOVE(36, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(38, MOVE_FLING),
LEVEL_UP_MOVE(38, MOVE_BELLY_DRUM),
LEVEL_UP_END
};

static const struct LevelUpMove sLinooneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SWITCHEROO),
LEVEL_UP_MOVE( 1, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE( 1, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 1, MOVE_ROTOTILLER),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(10, MOVE_HEADBUTT),
LEVEL_UP_MOVE(11, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(15, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(15, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(21, MOVE_MUD_SPORT),
LEVEL_UP_MOVE(23, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(24, MOVE_COVET),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(34, MOVE_BESTOW),
LEVEL_UP_MOVE(38, MOVE_REST),
LEVEL_UP_MOVE(38, MOVE_FLAIL),
LEVEL_UP_MOVE(40, MOVE_SLASH),
LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(48, MOVE_FLING),
LEVEL_UP_MOVE(49, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(49, MOVE_EXTREME_SPEED),
LEVEL_UP_END
};

static const struct LevelUpMove sWurmpleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 5, MOVE_POISON_STING),
LEVEL_UP_MOVE(15, MOVE_BUG_BITE),
LEVEL_UP_END
};

static const struct LevelUpMove sSilcoonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_POISON_STING),
LEVEL_UP_END
};

static const struct LevelUpMove sBeautiflyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE(10, MOVE_ABSORB),
LEVEL_UP_MOVE(12, MOVE_GUST),
LEVEL_UP_MOVE(16, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(19, MOVE_MORNING_SUN),
LEVEL_UP_MOVE(20, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(23, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(27, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(29, MOVE_ATTRACT),
LEVEL_UP_MOVE(31, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(36, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(37, MOVE_RAGE),
LEVEL_UP_MOVE(39, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(42, MOVE_QUIVER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sCascoonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_POISON_STING),
LEVEL_UP_END
};

static const struct LevelUpMove sDustoxLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE(10, MOVE_CONFUSION),
LEVEL_UP_MOVE(12, MOVE_GUST),
LEVEL_UP_MOVE(15, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(19, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(20, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(22, MOVE_PROTECT),
LEVEL_UP_MOVE(23, MOVE_PSYBEAM),
LEVEL_UP_MOVE(27, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(29, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(31, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(36, MOVE_TOXIC),
LEVEL_UP_MOVE(39, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(42, MOVE_QUIVER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sLotadLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_ABSORB),
LEVEL_UP_MOVE( 6, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 9, MOVE_BUBBLE),
LEVEL_UP_MOVE(11, MOVE_MIST),
LEVEL_UP_MOVE(14, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(16, MOVE_FLAIL),
LEVEL_UP_MOVE(16, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(18, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(22, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(28, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(33, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(33, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(42, MOVE_ENERGY_BALL),
LEVEL_UP_END
};

static const struct LevelUpMove sLombreLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE( 9, MOVE_MIST),
LEVEL_UP_MOVE( 9, MOVE_BUBBLE),
LEVEL_UP_MOVE(12, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(13, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(16, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(19, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(20, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(24, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(36, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(36, MOVE_UPROAR),
LEVEL_UP_MOVE(36, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(37, MOVE_THIEF),
LEVEL_UP_MOVE(39, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(43, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(51, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(57, MOVE_ENERGY_BALL),
LEVEL_UP_END
};

static const struct LevelUpMove sLudicoloLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_NATURE_POWER),
LEVEL_UP_MOVE( 1, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE( 1, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE( 9, MOVE_MIST),
LEVEL_UP_MOVE( 9, MOVE_BUBBLE),
LEVEL_UP_MOVE(12, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(13, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(16, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(19, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(20, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(24, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(36, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(36, MOVE_UPROAR),
LEVEL_UP_MOVE(36, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(37, MOVE_THIEF),
LEVEL_UP_MOVE(39, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(43, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(51, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(57, MOVE_ENERGY_BALL),
LEVEL_UP_END
};

static const struct LevelUpMove sSeedotLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 3, MOVE_ABSORB),
LEVEL_UP_MOVE( 3, MOVE_HARDEN),
LEVEL_UP_MOVE( 6, MOVE_ASTONISH),
LEVEL_UP_MOVE( 8, MOVE_GROWTH),
LEVEL_UP_MOVE(12, MOVE_ROLLOUT),
LEVEL_UP_MOVE(15, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(16, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(18, MOVE_PAYBACK),
LEVEL_UP_MOVE(23, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(27, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(30, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(37, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sNuzleafLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_TORMENT),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 1, MOVE_EXPLOSION),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 3, MOVE_HARDEN),
LEVEL_UP_MOVE( 7, MOVE_GROWTH),
LEVEL_UP_MOVE(12, MOVE_ROLLOUT),
LEVEL_UP_MOVE(14, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(17, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(18, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(18, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(21, MOVE_TORMENT),
LEVEL_UP_MOVE(24, MOVE_PAYBACK),
LEVEL_UP_MOVE(29, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(32, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(36, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(39, MOVE_SWAGGER),
LEVEL_UP_MOVE(44, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(46, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(50, MOVE_SUCKER_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sShiftryLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE( 1, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_TORMENT),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_WHIRLWIND),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 1, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 1, MOVE_EXPLOSION),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_PAYBACK),
LEVEL_UP_MOVE( 1, MOVE_NATURE_POWER),
LEVEL_UP_MOVE( 1, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 3, MOVE_HARDEN),
LEVEL_UP_MOVE( 7, MOVE_GROWTH),
LEVEL_UP_MOVE(12, MOVE_ROLLOUT),
LEVEL_UP_MOVE(14, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(17, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(18, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(18, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(19, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE(21, MOVE_TORMENT),
LEVEL_UP_MOVE(24, MOVE_PAYBACK),
LEVEL_UP_MOVE(29, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(32, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(32, MOVE_HURRICANE),
LEVEL_UP_MOVE(36, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(39, MOVE_SWAGGER),
LEVEL_UP_MOVE(44, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(46, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(47, MOVE_LEAF_STORM),
LEVEL_UP_MOVE(50, MOVE_SUCKER_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sTaillowLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(13, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(18, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(25, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(29, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(30, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(39, MOVE_AGILITY),
LEVEL_UP_MOVE(41, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(45, MOVE_REVERSAL),
LEVEL_UP_MOVE(46, MOVE_AIR_SLASH),
LEVEL_UP_END
};

static const struct LevelUpMove sSwellowLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_PLUCK),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(13, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(18, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(27, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(31, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(33, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(44, MOVE_AGILITY),
LEVEL_UP_MOVE(51, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(54, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(57, MOVE_REVERSAL),
LEVEL_UP_END
};

static const struct LevelUpMove sWingullLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_PECK),
LEVEL_UP_MOVE(11, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(16, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(18, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(20, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(21, MOVE_MIST),
LEVEL_UP_MOVE(27, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(32, MOVE_PURSUIT),
LEVEL_UP_MOVE(33, MOVE_ROOST),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(37, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(39, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(45, MOVE_HURRICANE),
LEVEL_UP_END
};

static const struct LevelUpMove sPelipperLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_SOAK),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_TAILWIND),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 3, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 5, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(11, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(18, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(21, MOVE_PAYBACK),
LEVEL_UP_MOVE(23, MOVE_MIST),
LEVEL_UP_MOVE(29, MOVE_BRINE),
LEVEL_UP_MOVE(33, MOVE_STOCKPILE),
LEVEL_UP_MOVE(33, MOVE_SWALLOW),
LEVEL_UP_MOVE(34, MOVE_SPIT_UP),
LEVEL_UP_MOVE(36, MOVE_ROOST),
LEVEL_UP_MOVE(38, MOVE_FLING),
LEVEL_UP_MOVE(48, MOVE_TAILWIND),
LEVEL_UP_MOVE(57, MOVE_HURRICANE),
LEVEL_UP_MOVE(57, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sRaltsLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 5, MOVE_CONFUSION),
LEVEL_UP_MOVE( 6, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(11, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(12, MOVE_TELEPORT),
LEVEL_UP_MOVE(15, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(16, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(18, MOVE_PSYBEAM),
LEVEL_UP_MOVE(19, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(21, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(25, MOVE_CALM_MIND),
LEVEL_UP_MOVE(26, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(29, MOVE_PSYCHIC),
LEVEL_UP_MOVE(30, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(31, MOVE_IMPRISON),
LEVEL_UP_MOVE(33, MOVE_CHARM),
LEVEL_UP_MOVE(36, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(41, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(48, MOVE_STORED_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sKirliaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 5, MOVE_CONFUSION),
LEVEL_UP_MOVE( 9, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(11, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(12, MOVE_TELEPORT),
LEVEL_UP_MOVE(15, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(16, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(18, MOVE_PSYBEAM),
LEVEL_UP_MOVE(20, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(23, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(28, MOVE_CALM_MIND),
LEVEL_UP_MOVE(31, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(33, MOVE_PSYCHIC),
LEVEL_UP_MOVE(35, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(35, MOVE_IMPRISON),
LEVEL_UP_MOVE(38, MOVE_CHARM),
LEVEL_UP_MOVE(44, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(51, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(58, MOVE_STORED_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sGardevoirLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE( 1, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_HEALING_WISH),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 5, MOVE_CONFUSION),
LEVEL_UP_MOVE( 9, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(11, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(12, MOVE_TELEPORT),
LEVEL_UP_MOVE(15, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(18, MOVE_PSYBEAM),
LEVEL_UP_MOVE(20, MOVE_WISH),
LEVEL_UP_MOVE(20, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(23, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(30, MOVE_CALM_MIND),
LEVEL_UP_MOVE(34, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(39, MOVE_IMPRISON),
LEVEL_UP_MOVE(41, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(51, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(52, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(61, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(69, MOVE_MOONBLAST),
LEVEL_UP_MOVE(70, MOVE_STORED_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sSurskitLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 6, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(11, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(17, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(22, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(28, MOVE_AGILITY),
LEVEL_UP_MOVE(30, MOVE_AQUA_JET),
LEVEL_UP_MOVE(33, MOVE_MIST),
LEVEL_UP_MOVE(33, MOVE_HAZE),
LEVEL_UP_MOVE(40, MOVE_BATON_PASS),
LEVEL_UP_MOVE(40, MOVE_STICKY_WEB),
LEVEL_UP_END
};

static const struct LevelUpMove sMasquerainLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_WHIRLWIND),
LEVEL_UP_MOVE( 1, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE( 1, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 6, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(11, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(17, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(21, MOVE_GUST),
LEVEL_UP_MOVE(22, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(25, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(31, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(38, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(44, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(52, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(54, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(60, MOVE_QUIVER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sShroomishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 4, MOVE_TACKLE),
LEVEL_UP_MOVE( 7, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(11, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(15, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(19, MOVE_HEADBUTT),
LEVEL_UP_MOVE(23, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(26, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(32, MOVE_GROWTH),
LEVEL_UP_MOVE(33, MOVE_TOXIC),
LEVEL_UP_MOVE(34, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(39, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(44, MOVE_SPORE),
LEVEL_UP_END
};

static const struct LevelUpMove sBreloomLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 4, MOVE_TACKLE),
LEVEL_UP_MOVE( 7, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(11, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(15, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(19, MOVE_HEADBUTT),
LEVEL_UP_MOVE(19, MOVE_FEINT),
LEVEL_UP_MOVE(23, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE(24, MOVE_COUNTER),
LEVEL_UP_MOVE(28, MOVE_FORCE_PALM),
LEVEL_UP_MOVE(35, MOVE_SKY_UPPERCUT),
LEVEL_UP_MOVE(36, MOVE_MIND_READER),
LEVEL_UP_MOVE(41, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(47, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(55, MOVE_SPORE),
LEVEL_UP_END
};

static const struct LevelUpMove sSlakothLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 6, MOVE_ENCORE),
LEVEL_UP_MOVE(11, MOVE_SLACK_OFF),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(22, MOVE_AMNESIA),
LEVEL_UP_MOVE(28, MOVE_COVET),
LEVEL_UP_MOVE(31, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(37, MOVE_COUNTER),
LEVEL_UP_MOVE(38, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(42, MOVE_FLAIL),
LEVEL_UP_END
};

static const struct LevelUpMove sVigorothLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_REVERSAL),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_UPROAR),
LEVEL_UP_MOVE( 6, MOVE_ENCORE),
LEVEL_UP_MOVE(11, MOVE_UPROAR),
LEVEL_UP_MOVE(17, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(22, MOVE_ENDURE),
LEVEL_UP_MOVE(28, MOVE_SLASH),
LEVEL_UP_MOVE(35, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(35, MOVE_COUNTER),
LEVEL_UP_MOVE(43, MOVE_FOCUS_PUNCH),
LEVEL_UP_MOVE(49, MOVE_REVERSAL),
LEVEL_UP_END
};

static const struct LevelUpMove sSlakingLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_PUNISHMENT),
LEVEL_UP_MOVE( 1, MOVE_FLING),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_SLACK_OFF),
LEVEL_UP_MOVE( 6, MOVE_ENCORE),
LEVEL_UP_MOVE(11, MOVE_SLACK_OFF),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(22, MOVE_AMNESIA),
LEVEL_UP_MOVE(28, MOVE_COVET),
LEVEL_UP_MOVE(32, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(36, MOVE_SWAGGER),
LEVEL_UP_MOVE(37, MOVE_COUNTER),
LEVEL_UP_MOVE(43, MOVE_FLAIL),
LEVEL_UP_MOVE(50, MOVE_FLING),
LEVEL_UP_MOVE(56, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(63, MOVE_HAMMER_ARM),
LEVEL_UP_END
};

static const struct LevelUpMove sNincadaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 9, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(17, MOVE_ABSORB),
LEVEL_UP_MOVE(19, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(21, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(23, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(25, MOVE_MIND_READER),
LEVEL_UP_MOVE(29, MOVE_BIDE),
LEVEL_UP_MOVE(30, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(41, MOVE_DIG),
LEVEL_UP_END
};

static const struct LevelUpMove sNinjaskLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 0, MOVE_SCREECH),
LEVEL_UP_MOVE( 0, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_DIG),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 5, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 9, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(18, MOVE_ABSORB),
LEVEL_UP_MOVE(20, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(20, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(20, MOVE_SCREECH),
LEVEL_UP_MOVE(21, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(26, MOVE_AGILITY),
LEVEL_UP_MOVE(28, MOVE_MIND_READER),
LEVEL_UP_MOVE(29, MOVE_BUG_BITE),
LEVEL_UP_MOVE(35, MOVE_SLASH),
LEVEL_UP_MOVE(38, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(42, MOVE_BATON_PASS),
LEVEL_UP_MOVE(55, MOVE_X_SCISSOR),
LEVEL_UP_END
};

static const struct LevelUpMove sShedinjaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 1, MOVE_GRUDGE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_DIG),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 5, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 9, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(18, MOVE_ABSORB),
LEVEL_UP_MOVE(21, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(25, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(28, MOVE_MIND_READER),
LEVEL_UP_MOVE(31, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(34, MOVE_SPITE),
LEVEL_UP_MOVE(42, MOVE_GRUDGE),
LEVEL_UP_MOVE(48, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(49, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(55, MOVE_PHANTOM_FORCE),
LEVEL_UP_END
};

static const struct LevelUpMove sWhismurLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 4, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(10, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_HOWL),
LEVEL_UP_MOVE(18, MOVE_UPROAR),
LEVEL_UP_MOVE(23, MOVE_STOMP),
LEVEL_UP_MOVE(23, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(30, MOVE_ROAR),
LEVEL_UP_MOVE(31, MOVE_REST),
LEVEL_UP_MOVE(31, MOVE_SCREECH),
LEVEL_UP_MOVE(32, MOVE_SLEEP_TALK),
LEVEL_UP_MOVE(41, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(45, MOVE_HYPER_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sLoudredLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 1, MOVE_HOWL),
LEVEL_UP_MOVE( 1, MOVE_UPROAR),
LEVEL_UP_MOVE( 4, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(10, MOVE_ASTONISH),
LEVEL_UP_MOVE(13, MOVE_HOWL),
LEVEL_UP_MOVE(20, MOVE_BITE),
LEVEL_UP_MOVE(21, MOVE_UPROAR),
LEVEL_UP_MOVE(25, MOVE_STOMP),
LEVEL_UP_MOVE(26, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(36, MOVE_ROAR),
LEVEL_UP_MOVE(37, MOVE_REST),
LEVEL_UP_MOVE(37, MOVE_SCREECH),
LEVEL_UP_MOVE(38, MOVE_SLEEP_TALK),
LEVEL_UP_MOVE(50, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(56, MOVE_HYPER_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sExploudLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 1, MOVE_HOWL),
LEVEL_UP_MOVE( 1, MOVE_BOOMBURST),
LEVEL_UP_MOVE( 1, MOVE_UPROAR),
LEVEL_UP_MOVE( 4, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(10, MOVE_ASTONISH),
LEVEL_UP_MOVE(13, MOVE_HOWL),
LEVEL_UP_MOVE(20, MOVE_BITE),
LEVEL_UP_MOVE(22, MOVE_UPROAR),
LEVEL_UP_MOVE(25, MOVE_STOMP),
LEVEL_UP_MOVE(26, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(37, MOVE_ROAR),
LEVEL_UP_MOVE(38, MOVE_REST),
LEVEL_UP_MOVE(38, MOVE_SCREECH),
LEVEL_UP_MOVE(40, MOVE_SLEEP_TALK),
LEVEL_UP_MOVE(40, MOVE_CRUNCH),
LEVEL_UP_MOVE(54, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(61, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(69, MOVE_BOOMBURST),
LEVEL_UP_MOVE(72, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sMakuhitaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_ARM_THRUST),
LEVEL_UP_MOVE(12, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(13, MOVE_VITAL_THROW),
LEVEL_UP_MOVE(16, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(20, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(23, MOVE_FORCE_PALM),
LEVEL_UP_MOVE(24, MOVE_SMELLING_SALT),
LEVEL_UP_MOVE(26, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(32, MOVE_SEISMIC_TOSS),
LEVEL_UP_MOVE(34, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(37, MOVE_ENDURE),
LEVEL_UP_MOVE(40, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(43, MOVE_REVERSAL),
LEVEL_UP_MOVE(46, MOVE_HEAVY_SLAM),
LEVEL_UP_END
};

static const struct LevelUpMove sHariyamaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BRINE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ARM_THRUST),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_ARM_THRUST),
LEVEL_UP_MOVE(12, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(13, MOVE_VITAL_THROW),
LEVEL_UP_MOVE(16, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(20, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(25, MOVE_FORCE_PALM),
LEVEL_UP_MOVE(25, MOVE_SMELLING_SALT),
LEVEL_UP_MOVE(28, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(37, MOVE_SEISMIC_TOSS),
LEVEL_UP_MOVE(40, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(45, MOVE_ENDURE),
LEVEL_UP_MOVE(50, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(54, MOVE_REVERSAL),
LEVEL_UP_MOVE(58, MOVE_HEAVY_SLAM),
LEVEL_UP_END
};

static const struct LevelUpMove sAzurillLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 7, MOVE_CHARM),
LEVEL_UP_MOVE( 8, MOVE_BUBBLE),
LEVEL_UP_MOVE( 9, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 9, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(15, MOVE_SLAM),
LEVEL_UP_MOVE(16, MOVE_WATER_GUN),
LEVEL_UP_MOVE(19, MOVE_BOUNCE),
LEVEL_UP_END
};

static const struct LevelUpMove sNosepassLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_HARDEN),
LEVEL_UP_MOVE(11, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(12, MOVE_BLOCK),
LEVEL_UP_MOVE(18, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(21, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(27, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(29, MOVE_REST),
LEVEL_UP_MOVE(35, MOVE_POWER_GEM),
LEVEL_UP_MOVE(35, MOVE_SANDSTORM),
LEVEL_UP_MOVE(42, MOVE_DISCHARGE),
LEVEL_UP_MOVE(49, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(52, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(55, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(55, MOVE_LOCK_ON),
LEVEL_UP_END
};

static const struct LevelUpMove sSkittyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 8, MOVE_ATTRACT),
LEVEL_UP_MOVE( 9, MOVE_SING),
LEVEL_UP_MOVE(13, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(17, MOVE_COPYCAT),
LEVEL_UP_MOVE(20, MOVE_PAY_DAY),
LEVEL_UP_MOVE(23, MOVE_ASSIST),
LEVEL_UP_MOVE(24, MOVE_CHARM),
LEVEL_UP_MOVE(26, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(30, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(34, MOVE_COVET),
LEVEL_UP_MOVE(37, MOVE_HEAL_BELL),
LEVEL_UP_MOVE(40, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(44, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(46, MOVE_PLAY_ROUGH),
LEVEL_UP_END
};

static const struct LevelUpMove sDelcattyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 8, MOVE_ATTRACT),
LEVEL_UP_MOVE( 9, MOVE_SING),
LEVEL_UP_MOVE(13, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(17, MOVE_COPYCAT),
LEVEL_UP_MOVE(20, MOVE_PAY_DAY),
LEVEL_UP_MOVE(23, MOVE_ASSIST),
LEVEL_UP_MOVE(24, MOVE_CHARM),
LEVEL_UP_MOVE(26, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(30, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(34, MOVE_COVET),
LEVEL_UP_MOVE(37, MOVE_HEAL_BELL),
LEVEL_UP_MOVE(40, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(44, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(46, MOVE_PLAY_ROUGH),
LEVEL_UP_END
};

static const struct LevelUpMove sSableyeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE( 1, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE( 4, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 8, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(15, MOVE_DISABLE),
LEVEL_UP_MOVE(16, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(17, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(17, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(19, MOVE_DETECT),
LEVEL_UP_MOVE(28, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(28, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(28, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(32, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(34, MOVE_QUASH),
LEVEL_UP_MOVE(34, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE(40, MOVE_POWER_GEM),
LEVEL_UP_MOVE(44, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(46, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(47, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(47, MOVE_SHADOW_BALL),
LEVEL_UP_END
};

static const struct LevelUpMove sMawileLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 1, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 4, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(10, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(19, MOVE_VICE_GRIP),
LEVEL_UP_MOVE(20, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(22, MOVE_BATON_PASS),
LEVEL_UP_MOVE(24, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(32, MOVE_CRUNCH),
LEVEL_UP_MOVE(33, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(34, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(36, MOVE_STOCKPILE),
LEVEL_UP_MOVE(36, MOVE_SWALLOW),
LEVEL_UP_MOVE(36, MOVE_SPIT_UP),
LEVEL_UP_MOVE(40, MOVE_TAUNT),
LEVEL_UP_MOVE(46, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(49, MOVE_PLAY_ROUGH),
LEVEL_UP_END
};

static const struct LevelUpMove sAronLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 9, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 9, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(11, MOVE_HEADBUTT),
LEVEL_UP_MOVE(17, MOVE_ROAR),
LEVEL_UP_MOVE(24, MOVE_PROTECT),
LEVEL_UP_MOVE(24, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(26, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(31, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(33, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(38, MOVE_IRON_TAIL),
LEVEL_UP_MOVE(40, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(47, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(48, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(52, MOVE_METAL_BURST),
LEVEL_UP_END
};

static const struct LevelUpMove sLaironLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(11, MOVE_HEADBUTT),
LEVEL_UP_MOVE(12, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(13, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(17, MOVE_ROAR),
LEVEL_UP_MOVE(24, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(25, MOVE_PROTECT),
LEVEL_UP_MOVE(26, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(30, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(34, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(36, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(43, MOVE_IRON_TAIL),
LEVEL_UP_MOVE(46, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(57, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(57, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(65, MOVE_METAL_BURST),
LEVEL_UP_END
};

static const struct LevelUpMove sAggronLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(11, MOVE_HEADBUTT),
LEVEL_UP_MOVE(12, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(13, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(17, MOVE_ROAR),
LEVEL_UP_MOVE(24, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(25, MOVE_PROTECT),
LEVEL_UP_MOVE(26, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(30, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(36, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(36, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(45, MOVE_IRON_TAIL),
LEVEL_UP_MOVE(49, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(64, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(65, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(75, MOVE_METAL_BURST),
LEVEL_UP_END
};

static const struct LevelUpMove sMedititeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 4, MOVE_MEDITATE),
LEVEL_UP_MOVE( 7, MOVE_CONFUSION),
LEVEL_UP_MOVE(10, MOVE_DETECT),
LEVEL_UP_MOVE(12, MOVE_ENDURE),
LEVEL_UP_MOVE(16, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(19, MOVE_FEINT),
LEVEL_UP_MOVE(20, MOVE_MIND_READER),
LEVEL_UP_MOVE(20, MOVE_SWAGGER),
LEVEL_UP_MOVE(24, MOVE_CALM_MIND),
LEVEL_UP_MOVE(25, MOVE_FORCE_PALM),
LEVEL_UP_MOVE(30, MOVE_HI_JUMP_KICK),
LEVEL_UP_MOVE(34, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(36, MOVE_ACUPRESSURE),
LEVEL_UP_MOVE(39, MOVE_POWER_TRICK),
LEVEL_UP_MOVE(42, MOVE_REVERSAL),
LEVEL_UP_MOVE(44, MOVE_COUNTER),
LEVEL_UP_MOVE(45, MOVE_RECOVER),
LEVEL_UP_END
};

static const struct LevelUpMove sMedichamLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_MEDITATE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_DETECT),
LEVEL_UP_MOVE( 4, MOVE_MEDITATE),
LEVEL_UP_MOVE( 7, MOVE_CONFUSION),
LEVEL_UP_MOVE(10, MOVE_DETECT),
LEVEL_UP_MOVE(12, MOVE_ENDURE),
LEVEL_UP_MOVE(16, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(19, MOVE_FEINT),
LEVEL_UP_MOVE(20, MOVE_MIND_READER),
LEVEL_UP_MOVE(20, MOVE_SWAGGER),
LEVEL_UP_MOVE(24, MOVE_CALM_MIND),
LEVEL_UP_MOVE(25, MOVE_FORCE_PALM),
LEVEL_UP_MOVE(30, MOVE_HI_JUMP_KICK),
LEVEL_UP_MOVE(34, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(37, MOVE_ACUPRESSURE),
LEVEL_UP_MOVE(42, MOVE_POWER_TRICK),
LEVEL_UP_MOVE(48, MOVE_REVERSAL),
LEVEL_UP_MOVE(53, MOVE_COUNTER),
LEVEL_UP_MOVE(55, MOVE_RECOVER),
LEVEL_UP_END
};

static const struct LevelUpMove sElectrikeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 4, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 6, MOVE_LEER),
LEVEL_UP_MOVE( 9, MOVE_HOWL),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(16, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(18, MOVE_SPARK),
LEVEL_UP_MOVE(22, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(24, MOVE_BITE),
LEVEL_UP_MOVE(26, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE(32, MOVE_ROAR),
LEVEL_UP_MOVE(35, MOVE_DISCHARGE),
LEVEL_UP_MOVE(41, MOVE_CHARGE),
LEVEL_UP_MOVE(42, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(46, MOVE_THUNDER),
LEVEL_UP_END
};

static const struct LevelUpMove sManectricLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HOWL),
LEVEL_UP_MOVE( 1, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE( 4, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 7, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_HOWL),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(16, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(18, MOVE_SPARK),
LEVEL_UP_MOVE(22, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(26, MOVE_BITE),
LEVEL_UP_MOVE(28, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE(35, MOVE_ROAR),
LEVEL_UP_MOVE(40, MOVE_DISCHARGE),
LEVEL_UP_MOVE(48, MOVE_CHARGE),
LEVEL_UP_MOVE(50, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(57, MOVE_THUNDER),
LEVEL_UP_MOVE(61, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sPlusleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE( 3, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 7, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(13, MOVE_SPARK),
LEVEL_UP_MOVE(13, MOVE_BESTOW),
LEVEL_UP_MOVE(15, MOVE_ENCORE),
LEVEL_UP_MOVE(21, MOVE_PLAY_NICE),
LEVEL_UP_MOVE(23, MOVE_COPYCAT),
LEVEL_UP_MOVE(24, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(25, MOVE_SWIFT),
LEVEL_UP_MOVE(25, MOVE_CHARM),
LEVEL_UP_MOVE(27, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(31, MOVE_DISCHARGE),
LEVEL_UP_MOVE(33, MOVE_CHARGE),
LEVEL_UP_MOVE(40, MOVE_BATON_PASS),
LEVEL_UP_MOVE(40, MOVE_THUNDER),
LEVEL_UP_MOVE(43, MOVE_AGILITY),
LEVEL_UP_MOVE(46, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(51, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(56, MOVE_ENTRAINMENT),
LEVEL_UP_END
};

static const struct LevelUpMove sMinunLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE( 3, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 7, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(13, MOVE_SPARK),
LEVEL_UP_MOVE(13, MOVE_SWITCHEROO),
LEVEL_UP_MOVE(15, MOVE_ENCORE),
LEVEL_UP_MOVE(22, MOVE_CHARM),
LEVEL_UP_MOVE(23, MOVE_COPYCAT),
LEVEL_UP_MOVE(24, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(25, MOVE_SWIFT),
LEVEL_UP_MOVE(30, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(31, MOVE_DISCHARGE),
LEVEL_UP_MOVE(33, MOVE_CHARGE),
LEVEL_UP_MOVE(40, MOVE_BATON_PASS),
LEVEL_UP_MOVE(40, MOVE_THUNDER),
LEVEL_UP_MOVE(43, MOVE_AGILITY),
LEVEL_UP_MOVE(46, MOVE_TRUMP_CARD),
LEVEL_UP_MOVE(51, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(56, MOVE_ENTRAINMENT),
LEVEL_UP_END
};

static const struct LevelUpMove sVolbeatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FLASH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 8, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(14, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(15, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(15, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(21, MOVE_TAIL_GLOW),
LEVEL_UP_MOVE(25, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(29, MOVE_PROTECT),
LEVEL_UP_MOVE(33, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(35, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(40, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(43, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(44, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(50, MOVE_INFESTATION),
LEVEL_UP_END
};

static const struct LevelUpMove sIllumiseLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 9, MOVE_CHARM),
LEVEL_UP_MOVE(14, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(15, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(15, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(21, MOVE_WISH),
LEVEL_UP_MOVE(25, MOVE_ENCORE),
LEVEL_UP_MOVE(29, MOVE_FLATTER),
LEVEL_UP_MOVE(33, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(35, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(40, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(43, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(44, MOVE_COVET),
LEVEL_UP_MOVE(50, MOVE_INFESTATION),
LEVEL_UP_END
};

static const struct LevelUpMove sRoseliaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_WORRY_SEED),
LEVEL_UP_MOVE( 4, MOVE_GROWTH),
LEVEL_UP_MOVE( 7, MOVE_POISON_STING),
LEVEL_UP_MOVE(10, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(10, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(14, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(18, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(22, MOVE_GRASS_WHISTLE),
LEVEL_UP_MOVE(25, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(27, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(29, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(39, MOVE_TOXIC),
LEVEL_UP_MOVE(41, MOVE_INGRAIN),
LEVEL_UP_MOVE(43, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(43, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(46, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(48, MOVE_PETAL_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sGulpinLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 5, MOVE_YAWN),
LEVEL_UP_MOVE( 8, MOVE_POISON_GAS),
LEVEL_UP_MOVE(12, MOVE_SLUDGE),
LEVEL_UP_MOVE(15, MOVE_AMNESIA),
LEVEL_UP_MOVE(22, MOVE_ENCORE),
LEVEL_UP_MOVE(26, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(27, MOVE_TOXIC),
LEVEL_UP_MOVE(34, MOVE_STOCKPILE),
LEVEL_UP_MOVE(34, MOVE_SPIT_UP),
LEVEL_UP_MOVE(34, MOVE_SWALLOW),
LEVEL_UP_MOVE(39, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(40, MOVE_BELCH),
LEVEL_UP_MOVE(43, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(49, MOVE_WRING_OUT),
LEVEL_UP_MOVE(54, MOVE_GUNK_SHOT),
LEVEL_UP_END
};

static const struct LevelUpMove sSwalotLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE( 1, MOVE_GUNK_SHOT),
LEVEL_UP_MOVE( 1, MOVE_WRING_OUT),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_SLUDGE),
LEVEL_UP_MOVE( 5, MOVE_YAWN),
LEVEL_UP_MOVE( 8, MOVE_POISON_GAS),
LEVEL_UP_MOVE(12, MOVE_SLUDGE),
LEVEL_UP_MOVE(15, MOVE_AMNESIA),
LEVEL_UP_MOVE(22, MOVE_ENCORE),
LEVEL_UP_MOVE(26, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(28, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(28, MOVE_TOXIC),
LEVEL_UP_MOVE(38, MOVE_STOCKPILE),
LEVEL_UP_MOVE(38, MOVE_SPIT_UP),
LEVEL_UP_MOVE(38, MOVE_SWALLOW),
LEVEL_UP_MOVE(45, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(48, MOVE_BELCH),
LEVEL_UP_MOVE(51, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(60, MOVE_WRING_OUT),
LEVEL_UP_MOVE(67, MOVE_GUNK_SHOT),
LEVEL_UP_END
};

static const struct LevelUpMove sCarvanhaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 5, MOVE_RAGE),
LEVEL_UP_MOVE( 8, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(13, MOVE_POISON_FANG),
LEVEL_UP_MOVE(15, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(19, MOVE_ICE_FANG),
LEVEL_UP_MOVE(20, MOVE_SCREECH),
LEVEL_UP_MOVE(22, MOVE_ASSURANCE),
LEVEL_UP_MOVE(24, MOVE_SWAGGER),
LEVEL_UP_MOVE(24, MOVE_AQUA_JET),
LEVEL_UP_MOVE(30, MOVE_CRUNCH),
LEVEL_UP_MOVE(37, MOVE_AGILITY),
LEVEL_UP_MOVE(40, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(40, MOVE_TAKE_DOWN),
LEVEL_UP_END
};

static const struct LevelUpMove sSharpedoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_POISON_FANG),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 5, MOVE_RAGE),
LEVEL_UP_MOVE( 8, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(15, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(19, MOVE_ICE_FANG),
LEVEL_UP_MOVE(20, MOVE_SCREECH),
LEVEL_UP_MOVE(22, MOVE_ASSURANCE),
LEVEL_UP_MOVE(25, MOVE_SWAGGER),
LEVEL_UP_MOVE(26, MOVE_AQUA_JET),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(31, MOVE_CRUNCH),
LEVEL_UP_MOVE(34, MOVE_POISON_FANG),
LEVEL_UP_MOVE(43, MOVE_AGILITY),
LEVEL_UP_MOVE(44, MOVE_TAUNT),
LEVEL_UP_MOVE(46, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(50, MOVE_SKULL_BASH),
LEVEL_UP_MOVE(52, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(57, MOVE_NIGHT_SLASH),
LEVEL_UP_END
};

static const struct LevelUpMove sWailmerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_WATER_GUN),
LEVEL_UP_MOVE(11, MOVE_ROLLOUT),
LEVEL_UP_MOVE(13, MOVE_ASTONISH),
LEVEL_UP_MOVE(18, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(20, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(21, MOVE_MIST),
LEVEL_UP_MOVE(27, MOVE_BRINE),
LEVEL_UP_MOVE(32, MOVE_REST),
LEVEL_UP_MOVE(36, MOVE_DIVE),
LEVEL_UP_MOVE(36, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(37, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(39, MOVE_AMNESIA),
LEVEL_UP_MOVE(39, MOVE_WATER_SPOUT),
LEVEL_UP_MOVE(40, MOVE_BOUNCE),
LEVEL_UP_MOVE(46, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sWailordLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SOAK),
LEVEL_UP_MOVE( 1, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_WATER_GUN),
LEVEL_UP_MOVE(11, MOVE_ROLLOUT),
LEVEL_UP_MOVE(17, MOVE_ASTONISH),
LEVEL_UP_MOVE(18, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(20, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(21, MOVE_MIST),
LEVEL_UP_MOVE(27, MOVE_BRINE),
LEVEL_UP_MOVE(31, MOVE_REST),
LEVEL_UP_MOVE(36, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(39, MOVE_DIVE),
LEVEL_UP_MOVE(40, MOVE_AMNESIA),
LEVEL_UP_MOVE(41, MOVE_WATER_SPOUT),
LEVEL_UP_MOVE(45, MOVE_BOUNCE),
LEVEL_UP_MOVE(46, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(56, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sNumelLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE(11, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(13, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(16, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(23, MOVE_AMNESIA),
LEVEL_UP_MOVE(26, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(27, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(29, MOVE_CURSE),
LEVEL_UP_MOVE(30, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(36, MOVE_YAWN),
LEVEL_UP_MOVE(40, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(44, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(49, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sCameruptLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 1, MOVE_FISSURE),
LEVEL_UP_MOVE( 1, MOVE_ERUPTION),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_MAGNITUDE),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE(11, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(13, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(16, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(23, MOVE_AMNESIA),
LEVEL_UP_MOVE(25, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(27, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(29, MOVE_CURSE),
LEVEL_UP_MOVE(32, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(33, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(39, MOVE_YAWN),
LEVEL_UP_MOVE(46, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(53, MOVE_ERUPTION),
LEVEL_UP_MOVE(62, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sTorkoalLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_INFERNO),
LEVEL_UP_MOVE( 1, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE( 4, MOVE_SMOG),
LEVEL_UP_MOVE( 5, MOVE_WITHDRAW),
LEVEL_UP_MOVE(15, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(15, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(15, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(16, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(19, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(24, MOVE_CURSE),
LEVEL_UP_MOVE(30, MOVE_PROTECT),
LEVEL_UP_MOVE(30, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(32, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(33, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(39, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(47, MOVE_AMNESIA),
LEVEL_UP_MOVE(48, MOVE_FLAIL),
LEVEL_UP_MOVE(50, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE(55, MOVE_INFERNO),
LEVEL_UP_MOVE(58, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(64, MOVE_ERUPTION),
LEVEL_UP_END
};

static const struct LevelUpMove sSpoinkLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 7, MOVE_PSYWAVE),
LEVEL_UP_MOVE(10, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(14, MOVE_PSYBEAM),
LEVEL_UP_MOVE(15, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(18, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(21, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(26, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(30, MOVE_REST),
LEVEL_UP_MOVE(31, MOVE_SNORE),
LEVEL_UP_MOVE(37, MOVE_POWER_GEM),
LEVEL_UP_MOVE(37, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(38, MOVE_PAYBACK),
LEVEL_UP_MOVE(42, MOVE_PSYCHIC),
LEVEL_UP_MOVE(48, MOVE_BOUNCE),
LEVEL_UP_END
};

static const struct LevelUpMove sGrumpigLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_BELCH),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 7, MOVE_PSYWAVE),
LEVEL_UP_MOVE(10, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(14, MOVE_PSYBEAM),
LEVEL_UP_MOVE(15, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(18, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(21, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(26, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(32, MOVE_REST),
LEVEL_UP_MOVE(32, MOVE_SNORE),
LEVEL_UP_MOVE(32, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE(41, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(42, MOVE_POWER_GEM),
LEVEL_UP_MOVE(43, MOVE_PAYBACK),
LEVEL_UP_MOVE(49, MOVE_PSYCHIC),
LEVEL_UP_MOVE(60, MOVE_BOUNCE),
LEVEL_UP_END
};

static const struct LevelUpMove sSpindaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 8, MOVE_COPYCAT),
LEVEL_UP_MOVE(12, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(13, MOVE_UPROAR),
LEVEL_UP_MOVE(17, MOVE_PSYBEAM),
LEVEL_UP_MOVE(21, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(26, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE(30, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(35, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE(40, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(45, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(49, MOVE_FLAIL),
LEVEL_UP_MOVE(54, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sTrapinchLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_FISSURE),
LEVEL_UP_MOVE( 1, MOVE_SUPERPOWER),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 4, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE(10, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(13, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(16, MOVE_BULLDOZE),
LEVEL_UP_MOVE(17, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(17, MOVE_BIDE),
LEVEL_UP_MOVE(19, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(29, MOVE_DIG),
LEVEL_UP_MOVE(29, MOVE_CRUNCH),
LEVEL_UP_MOVE(40, MOVE_SANDSTORM),
LEVEL_UP_MOVE(42, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(48, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(49, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(51, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(59, MOVE_FEINT),
LEVEL_UP_MOVE(62, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sVibravaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_DIG),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_SUPERPOWER),
LEVEL_UP_MOVE( 1, MOVE_FISSURE),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 1, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(10, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(13, MOVE_BULLDOZE),
LEVEL_UP_MOVE(13, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(17, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(17, MOVE_BIDE),
LEVEL_UP_MOVE(19, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(20, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(27, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(28, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(30, MOVE_SCREECH),
LEVEL_UP_MOVE(33, MOVE_CRUNCH),
LEVEL_UP_MOVE(34, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(35, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(40, MOVE_SANDSTORM),
LEVEL_UP_MOVE(40, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(46, MOVE_UPROAR),
LEVEL_UP_MOVE(51, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(56, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(56, MOVE_BOOMBURST),
LEVEL_UP_END
};

static const struct LevelUpMove sFlygonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_DIG),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_SUPERPOWER),
LEVEL_UP_MOVE( 1, MOVE_FISSURE),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 1, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(10, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(13, MOVE_BULLDOZE),
LEVEL_UP_MOVE(13, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(17, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(17, MOVE_BIDE),
LEVEL_UP_MOVE(19, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(27, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(28, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(30, MOVE_SCREECH),
LEVEL_UP_MOVE(31, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(33, MOVE_CRUNCH),
LEVEL_UP_MOVE(34, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(35, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(40, MOVE_SANDSTORM),
LEVEL_UP_MOVE(40, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(47, MOVE_UPROAR),
LEVEL_UP_MOVE(48, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(52, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(55, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(68, MOVE_BOOMBURST),
LEVEL_UP_END
};

static const struct LevelUpMove sCacneaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 4, MOVE_ABSORB),
LEVEL_UP_MOVE( 8, MOVE_GROWTH),
LEVEL_UP_MOVE(12, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(15, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(24, MOVE_INGRAIN),
LEVEL_UP_MOVE(25, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(26, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(32, MOVE_SPIKES),
LEVEL_UP_MOVE(35, MOVE_NEEDLE_ARM),
LEVEL_UP_MOVE(36, MOVE_PAYBACK),
LEVEL_UP_MOVE(36, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(42, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(47, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(51, MOVE_SANDSTORM),
LEVEL_UP_MOVE(55, MOVE_DESTINY_BOND),
LEVEL_UP_END
};

static const struct LevelUpMove sCacturneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SPIKY_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_SPIKY_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE( 1, MOVE_REVENGE),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 4, MOVE_ABSORB),
LEVEL_UP_MOVE( 8, MOVE_GROWTH),
LEVEL_UP_MOVE(12, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(15, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(24, MOVE_INGRAIN),
LEVEL_UP_MOVE(25, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(26, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(32, MOVE_SPIKY_SHIELD),
LEVEL_UP_MOVE(33, MOVE_SPIKES),
LEVEL_UP_MOVE(39, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(40, MOVE_PAYBACK),
LEVEL_UP_MOVE(41, MOVE_NEEDLE_ARM),
LEVEL_UP_MOVE(44, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(54, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(60, MOVE_SANDSTORM),
LEVEL_UP_MOVE(66, MOVE_DESTINY_BOND),
LEVEL_UP_END
};

static const struct LevelUpMove sSwabluLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_ASTONISH),
LEVEL_UP_MOVE( 6, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(11, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(14, MOVE_SING),
LEVEL_UP_MOVE(15, MOVE_MIST),
LEVEL_UP_MOVE(16, MOVE_ROUND),
LEVEL_UP_MOVE(17, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(20, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(25, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(29, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(34, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(34, MOVE_REFRESH),
LEVEL_UP_MOVE(34, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(42, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(43, MOVE_MOONBLAST),
LEVEL_UP_MOVE(46, MOVE_PERISH_SONG),
LEVEL_UP_END
};

static const struct LevelUpMove sAltariaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 0, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_PLUCK),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 4, MOVE_ASTONISH),
LEVEL_UP_MOVE(11, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(11, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(14, MOVE_SING),
LEVEL_UP_MOVE(16, MOVE_ROUND),
LEVEL_UP_MOVE(17, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(19, MOVE_MIST),
LEVEL_UP_MOVE(25, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(29, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(30, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(35, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(35, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(37, MOVE_REFRESH),
LEVEL_UP_MOVE(48, MOVE_MOONBLAST),
LEVEL_UP_MOVE(48, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(54, MOVE_PERISH_SONG),
LEVEL_UP_MOVE(61, MOVE_SKY_ATTACK),
LEVEL_UP_END
};

static const struct LevelUpMove sZangooseLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(10, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(15, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(17, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_SLASH),
LEVEL_UP_MOVE(23, MOVE_REVENGE),
LEVEL_UP_MOVE(26, MOVE_EMBARGO),
LEVEL_UP_MOVE(27, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(27, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(37, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(38, MOVE_DETECT),
LEVEL_UP_MOVE(38, MOVE_TAUNT),
LEVEL_UP_MOVE(42, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(50, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sSeviperLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 7, MOVE_BITE),
LEVEL_UP_MOVE( 7, MOVE_LICK),
LEVEL_UP_MOVE(11, MOVE_FEINT),
LEVEL_UP_MOVE(13, MOVE_POISON_TAIL),
LEVEL_UP_MOVE(16, MOVE_SCREECH),
LEVEL_UP_MOVE(22, MOVE_GLARE),
LEVEL_UP_MOVE(24, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(25, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(28, MOVE_POISON_FANG),
LEVEL_UP_MOVE(31, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(32, MOVE_SWAGGER),
LEVEL_UP_MOVE(35, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(35, MOVE_CRUNCH),
LEVEL_UP_MOVE(36, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(39, MOVE_HAZE),
LEVEL_UP_MOVE(43, MOVE_POISON_JAB),
LEVEL_UP_MOVE(43, MOVE_BELCH),
LEVEL_UP_MOVE(49, MOVE_COIL),
LEVEL_UP_MOVE(52, MOVE_WRING_OUT),
LEVEL_UP_END
};

static const struct LevelUpMove sLunatoneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_MOONLIGHT),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_PSYSHOCK),
LEVEL_UP_MOVE( 1, MOVE_MAGIC_ROOM),
LEVEL_UP_MOVE( 7, MOVE_CONFUSION),
LEVEL_UP_MOVE( 8, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 8, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(12, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(18, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(19, MOVE_PSYWAVE),
LEVEL_UP_MOVE(20, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(23, MOVE_EMBARGO),
LEVEL_UP_MOVE(28, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(34, MOVE_PSYCHIC),
LEVEL_UP_MOVE(36, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(37, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(44, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(49, MOVE_MAGIC_ROOM),
LEVEL_UP_MOVE(50, MOVE_EXPLOSION),
LEVEL_UP_MOVE(50, MOVE_MOONBLAST),
LEVEL_UP_END
};

static const struct LevelUpMove sSolrockLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE( 1, MOVE_MORNING_SUN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_WONDER_ROOM),
LEVEL_UP_MOVE( 5, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 7, MOVE_CONFUSION),
LEVEL_UP_MOVE( 8, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(10, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(12, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(19, MOVE_PSYWAVE),
LEVEL_UP_MOVE(20, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(23, MOVE_EMBARGO),
LEVEL_UP_MOVE(26, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(28, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(30, MOVE_PSYCHIC),
LEVEL_UP_MOVE(36, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(37, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(44, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(49, MOVE_WONDER_ROOM),
LEVEL_UP_MOVE(50, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sBarboachLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 6, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 6, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 9, MOVE_WATER_GUN),
LEVEL_UP_MOVE(13, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(15, MOVE_ICY_WIND),
LEVEL_UP_MOVE(17, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(17, MOVE_AMNESIA),
LEVEL_UP_MOVE(19, MOVE_BULLDOZE),
LEVEL_UP_MOVE(21, MOVE_REST),
LEVEL_UP_MOVE(21, MOVE_SNORE),
LEVEL_UP_MOVE(23, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(25, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(27, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(29, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(32, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(36, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(38, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(41, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(46, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sWhiscashLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_THRASH),
LEVEL_UP_MOVE( 0, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE( 1, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_BELCH),
LEVEL_UP_MOVE( 1, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_TICKLE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_REST),
LEVEL_UP_MOVE( 1, MOVE_SNORE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 6, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 6, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 9, MOVE_WATER_GUN),
LEVEL_UP_MOVE(13, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(15, MOVE_ICY_WIND),
LEVEL_UP_MOVE(17, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(17, MOVE_AMNESIA),
LEVEL_UP_MOVE(19, MOVE_BULLDOZE),
LEVEL_UP_MOVE(23, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(25, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(27, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(29, MOVE_REST),
LEVEL_UP_MOVE(29, MOVE_SNORE),
LEVEL_UP_MOVE(30, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(31, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(35, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(38, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(40, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(42, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(48, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(55, MOVE_FISSURE),
LEVEL_UP_MOVE(58, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sCorphishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 6, MOVE_HARDEN),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE( 9, MOVE_VICE_GRIP),
LEVEL_UP_MOVE(16, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(20, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(22, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(22, MOVE_PROTECT),
LEVEL_UP_MOVE(24, MOVE_TAUNT),
LEVEL_UP_MOVE(30, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(31, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(39, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(40, MOVE_CRABHAMMER),
LEVEL_UP_MOVE(42, MOVE_CRUNCH),
LEVEL_UP_MOVE(48, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(51, MOVE_GUILLOTINE),
LEVEL_UP_END
};

static const struct LevelUpMove sCrawdauntLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 1, MOVE_GUILLOTINE),
LEVEL_UP_MOVE( 6, MOVE_HARDEN),
LEVEL_UP_MOVE( 9, MOVE_VICE_GRIP),
LEVEL_UP_MOVE(12, MOVE_LEER),
LEVEL_UP_MOVE(16, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(20, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(22, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(22, MOVE_PROTECT),
LEVEL_UP_MOVE(30, MOVE_SWIFT),
LEVEL_UP_MOVE(32, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(33, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(34, MOVE_TAUNT),
LEVEL_UP_MOVE(45, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(46, MOVE_CRABHAMMER),
LEVEL_UP_MOVE(50, MOVE_CRUNCH),
LEVEL_UP_MOVE(58, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(61, MOVE_GUILLOTINE),
LEVEL_UP_END
};

static const struct LevelUpMove sBaltoyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 3, MOVE_HARDEN),
LEVEL_UP_MOVE( 4, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 6, MOVE_CONFUSION),
LEVEL_UP_MOVE( 7, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(12, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(13, MOVE_PSYBEAM),
LEVEL_UP_MOVE(20, MOVE_POWER_TRICK),
LEVEL_UP_MOVE(20, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(26, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(28, MOVE_IMPRISON),
LEVEL_UP_MOVE(29, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(30, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(36, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(36, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(38, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(38, MOVE_SANDSTORM),
LEVEL_UP_MOVE(39, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(50, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sClaydolLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 1, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 3, MOVE_HARDEN),
LEVEL_UP_MOVE( 4, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 7, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(12, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(13, MOVE_PSYBEAM),
LEVEL_UP_MOVE(20, MOVE_POWER_TRICK),
LEVEL_UP_MOVE(20, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(26, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(29, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(31, MOVE_IMPRISON),
LEVEL_UP_MOVE(32, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(36, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(37, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(37, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(41, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(42, MOVE_SANDSTORM),
LEVEL_UP_MOVE(46, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(60, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sLileepLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 6, MOVE_ACID),
LEVEL_UP_MOVE( 8, MOVE_CONSTRICT),
LEVEL_UP_MOVE(13, MOVE_INGRAIN),
LEVEL_UP_MOVE(16, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(20, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(22, MOVE_BRINE),
LEVEL_UP_MOVE(29, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(30, MOVE_AMNESIA),
LEVEL_UP_MOVE(32, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(33, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(45, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(48, MOVE_STOCKPILE),
LEVEL_UP_MOVE(48, MOVE_SPIT_UP),
LEVEL_UP_MOVE(48, MOVE_SWALLOW),
LEVEL_UP_MOVE(60, MOVE_WRING_OUT),
LEVEL_UP_END
};

static const struct LevelUpMove sCradilyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_WRING_OUT),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 1, MOVE_INGRAIN),
LEVEL_UP_MOVE( 1, MOVE_SWALLOW),
LEVEL_UP_MOVE( 1, MOVE_SPIT_UP),
LEVEL_UP_MOVE( 1, MOVE_STOCKPILE),
LEVEL_UP_MOVE( 8, MOVE_ACID),
LEVEL_UP_MOVE( 8, MOVE_CONSTRICT),
LEVEL_UP_MOVE(13, MOVE_INGRAIN),
LEVEL_UP_MOVE(20, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(20, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(22, MOVE_BRINE),
LEVEL_UP_MOVE(26, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(30, MOVE_AMNESIA),
LEVEL_UP_MOVE(32, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(37, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(50, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(55, MOVE_STOCKPILE),
LEVEL_UP_MOVE(55, MOVE_SPIT_UP),
LEVEL_UP_MOVE(55, MOVE_SWALLOW),
LEVEL_UP_MOVE(71, MOVE_WRING_OUT),
LEVEL_UP_END
};

static const struct LevelUpMove sAnorithLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 6, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 7, MOVE_HARDEN),
LEVEL_UP_MOVE( 9, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 9, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(16, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(21, MOVE_BUG_BITE),
LEVEL_UP_MOVE(24, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(25, MOVE_BRINE),
LEVEL_UP_MOVE(30, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(35, MOVE_PROTECT),
LEVEL_UP_MOVE(36, MOVE_SLASH),
LEVEL_UP_MOVE(43, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(46, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(51, MOVE_X_SCISSOR),
LEVEL_UP_END
};

static const struct LevelUpMove sArmaldoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE( 6, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 7, MOVE_HARDEN),
LEVEL_UP_MOVE(12, MOVE_WATER_GUN),
LEVEL_UP_MOVE(13, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(16, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(21, MOVE_BUG_BITE),
LEVEL_UP_MOVE(24, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(25, MOVE_BRINE),
LEVEL_UP_MOVE(30, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(36, MOVE_PROTECT),
LEVEL_UP_MOVE(37, MOVE_SLASH),
LEVEL_UP_MOVE(48, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(50, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(58, MOVE_X_SCISSOR),
LEVEL_UP_END
};

static const struct LevelUpMove sFeebasLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE(15, MOVE_TACKLE),
LEVEL_UP_MOVE(28, MOVE_FLAIL),
LEVEL_UP_END
};

static const struct LevelUpMove sMiloticLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 1, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 1, MOVE_REFRESH),
LEVEL_UP_MOVE( 5, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_WRAP),
LEVEL_UP_MOVE( 6, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 9, MOVE_REFRESH),
LEVEL_UP_MOVE(14, MOVE_TWISTER),
LEVEL_UP_MOVE(14, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(20, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(24, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(24, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(25, MOVE_RECOVER),
LEVEL_UP_MOVE(29, MOVE_AQUA_RING),
LEVEL_UP_MOVE(30, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(31, MOVE_ATTRACT),
LEVEL_UP_MOVE(39, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(40, MOVE_SURF),
LEVEL_UP_MOVE(41, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(43, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(46, MOVE_COIL),
LEVEL_UP_END
};

static const struct LevelUpMove sCastformLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE(10, MOVE_WATER_GUN),
LEVEL_UP_MOVE(10, MOVE_EMBER),
LEVEL_UP_MOVE(10, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(15, MOVE_HEADBUTT),
LEVEL_UP_MOVE(21, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(21, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(21, MOVE_HAIL),
LEVEL_UP_MOVE(29, MOVE_WEATHER_BALL),
LEVEL_UP_MOVE(39, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(39, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(39, MOVE_BLIZZARD),
LEVEL_UP_MOVE(45, MOVE_HURRICANE),
LEVEL_UP_END
};

static const struct LevelUpMove sKecleonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THIEF),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 4, MOVE_BIND),
LEVEL_UP_MOVE( 9, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(11, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(12, MOVE_FEINT),
LEVEL_UP_MOVE(17, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(17, MOVE_PSYBEAM),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(30, MOVE_CAMOUFLAGE),
LEVEL_UP_MOVE(32, MOVE_SCREECH),
LEVEL_UP_MOVE(38, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(44, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE(44, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(45, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(54, MOVE_SYNCHRONOISE),
LEVEL_UP_END
};

static const struct LevelUpMove sShuppetLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE( 4, MOVE_SCREECH),
LEVEL_UP_MOVE( 8, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(14, MOVE_SPITE),
LEVEL_UP_MOVE(16, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(18, MOVE_CURSE),
LEVEL_UP_MOVE(19, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(25, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(25, MOVE_HEX),
LEVEL_UP_MOVE(32, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(36, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(37, MOVE_EMBARGO),
LEVEL_UP_MOVE(43, MOVE_SNATCH),
LEVEL_UP_MOVE(47, MOVE_GRUDGE),
LEVEL_UP_MOVE(50, MOVE_TRICK),
LEVEL_UP_MOVE(54, MOVE_PHANTOM_FORCE),
LEVEL_UP_END
};

static const struct LevelUpMove sBanetteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE( 1, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 1, MOVE_SPITE),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 5, MOVE_SCREECH),
LEVEL_UP_MOVE( 7, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(14, MOVE_SPITE),
LEVEL_UP_MOVE(16, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(18, MOVE_CURSE),
LEVEL_UP_MOVE(19, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(25, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(25, MOVE_HEX),
LEVEL_UP_MOVE(33, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(37, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(40, MOVE_EMBARGO),
LEVEL_UP_MOVE(49, MOVE_SNATCH),
LEVEL_UP_MOVE(56, MOVE_GRUDGE),
LEVEL_UP_MOVE(62, MOVE_TRICK),
LEVEL_UP_MOVE(64, MOVE_PHANTOM_FORCE),
LEVEL_UP_END
};

static const struct LevelUpMove sDuskullLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 5, MOVE_DISABLE),
LEVEL_UP_MOVE(10, MOVE_FORESIGHT),
LEVEL_UP_MOVE(12, MOVE_ASTONISH),
LEVEL_UP_MOVE(15, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(16, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(18, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(24, MOVE_PURSUIT),
LEVEL_UP_MOVE(28, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(32, MOVE_CURSE),
LEVEL_UP_MOVE(35, MOVE_HEX),
LEVEL_UP_MOVE(36, MOVE_PAYBACK),
LEVEL_UP_MOVE(37, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(40, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(47, MOVE_FUTURE_SIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sDusclopsLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_GRAVITY),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 1, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 5, MOVE_DISABLE),
LEVEL_UP_MOVE(10, MOVE_FORESIGHT),
LEVEL_UP_MOVE(12, MOVE_ASTONISH),
LEVEL_UP_MOVE(16, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(18, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(20, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(24, MOVE_PURSUIT),
LEVEL_UP_MOVE(29, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(32, MOVE_CURSE),
LEVEL_UP_MOVE(36, MOVE_HEX),
LEVEL_UP_MOVE(37, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE(41, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(42, MOVE_PAYBACK),
LEVEL_UP_MOVE(43, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(56, MOVE_FUTURE_SIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sTropiusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEAF_STORM),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_BESTOW),
LEVEL_UP_MOVE( 1, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE( 7, MOVE_GROWTH),
LEVEL_UP_MOVE(11, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(15, MOVE_STOMP),
LEVEL_UP_MOVE(16, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(25, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(26, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(37, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE(38, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(44, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(44, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(52, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(52, MOVE_BESTOW),
LEVEL_UP_MOVE(54, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(64, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sChimechoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HEALING_WISH),
LEVEL_UP_MOVE( 1, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(20, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(21, MOVE_YAWN),
LEVEL_UP_MOVE(21, MOVE_UPROAR),
LEVEL_UP_MOVE(26, MOVE_PSYWAVE),
LEVEL_UP_MOVE(34, MOVE_HEAL_BELL),
LEVEL_UP_MOVE(35, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(38, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(39, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(46, MOVE_PSYCHIC),
LEVEL_UP_MOVE(48, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(53, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(54, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sAbsolLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_PERISH_SONG),
LEVEL_UP_MOVE( 1, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_ME_FIRST),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE( 1, MOVE_DETECT),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(14, MOVE_TAUNT),
LEVEL_UP_MOVE(14, MOVE_PURSUIT),
LEVEL_UP_MOVE(19, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(21, MOVE_BITE),
LEVEL_UP_MOVE(28, MOVE_SLASH),
LEVEL_UP_MOVE(32, MOVE_DETECT),
LEVEL_UP_MOVE(33, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(35, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(35, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(37, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(43, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(45, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(49, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(52, MOVE_ME_FIRST),
LEVEL_UP_MOVE(58, MOVE_PERISH_SONG),
LEVEL_UP_END
};

static const struct LevelUpMove sWynautLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE( 1, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 1, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_AMNESIA),
LEVEL_UP_MOVE(15, MOVE_COUNTER),
LEVEL_UP_MOVE(15, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(15, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(15, MOVE_DESTINY_BOND),
LEVEL_UP_END
};

static const struct LevelUpMove sSnoruntLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 6, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(17, MOVE_ICY_WIND),
LEVEL_UP_MOVE(20, MOVE_BITE),
LEVEL_UP_MOVE(23, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(23, MOVE_PROTECT),
LEVEL_UP_MOVE(31, MOVE_ICE_FANG),
LEVEL_UP_MOVE(31, MOVE_HEADBUTT),
LEVEL_UP_MOVE(32, MOVE_FROST_BREATH),
LEVEL_UP_MOVE(34, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(40, MOVE_CRUNCH),
LEVEL_UP_MOVE(43, MOVE_HAIL),
LEVEL_UP_MOVE(50, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sGlalieLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE( 1, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE( 1, MOVE_SHEER_COLD),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 4, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(13, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(17, MOVE_ICY_WIND),
LEVEL_UP_MOVE(20, MOVE_BITE),
LEVEL_UP_MOVE(23, MOVE_PROTECT),
LEVEL_UP_MOVE(31, MOVE_ICE_FANG),
LEVEL_UP_MOVE(32, MOVE_FROST_BREATH),
LEVEL_UP_MOVE(32, MOVE_HEADBUTT),
LEVEL_UP_MOVE(36, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(42, MOVE_CRUNCH),
LEVEL_UP_MOVE(42, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(45, MOVE_HAIL),
LEVEL_UP_MOVE(56, MOVE_BLIZZARD),
LEVEL_UP_MOVE(59, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sSphealLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 8, MOVE_WATER_GUN),
LEVEL_UP_MOVE(12, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(13, MOVE_ICE_BALL),
LEVEL_UP_MOVE(16, MOVE_ENCORE),
LEVEL_UP_MOVE(21, MOVE_BRINE),
LEVEL_UP_MOVE(25, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(26, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(28, MOVE_REST),
LEVEL_UP_MOVE(30, MOVE_SNORE),
LEVEL_UP_MOVE(37, MOVE_HAIL),
LEVEL_UP_MOVE(40, MOVE_SURF),
LEVEL_UP_MOVE(42, MOVE_BLIZZARD),
LEVEL_UP_MOVE(49, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sSealeoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 5, MOVE_ROLLOUT),
LEVEL_UP_MOVE(12, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(13, MOVE_ICE_BALL),
LEVEL_UP_MOVE(16, MOVE_ENCORE),
LEVEL_UP_MOVE(21, MOVE_BRINE),
LEVEL_UP_MOVE(25, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(27, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(29, MOVE_REST),
LEVEL_UP_MOVE(31, MOVE_SNORE),
LEVEL_UP_MOVE(32, MOVE_SWAGGER),
LEVEL_UP_MOVE(41, MOVE_HAIL),
LEVEL_UP_MOVE(46, MOVE_SURF),
LEVEL_UP_MOVE(48, MOVE_BLIZZARD),
LEVEL_UP_MOVE(57, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sWalreinLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 7, MOVE_ROLLOUT),
LEVEL_UP_MOVE(12, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(13, MOVE_ICE_BALL),
LEVEL_UP_MOVE(16, MOVE_ENCORE),
LEVEL_UP_MOVE(22, MOVE_BRINE),
LEVEL_UP_MOVE(24, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(27, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(29, MOVE_REST),
LEVEL_UP_MOVE(31, MOVE_SNORE),
LEVEL_UP_MOVE(32, MOVE_SWAGGER),
LEVEL_UP_MOVE(36, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(43, MOVE_HAIL),
LEVEL_UP_MOVE(44, MOVE_ICE_FANG),
LEVEL_UP_MOVE(48, MOVE_SURF),
LEVEL_UP_MOVE(52, MOVE_BLIZZARD),
LEVEL_UP_MOVE(66, MOVE_SHEER_COLD),
LEVEL_UP_MOVE(66, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sClamperlLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CLAMP),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(50, MOVE_SHELL_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sHuntailLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 6, MOVE_BITE),
LEVEL_UP_MOVE( 9, MOVE_SCREECH),
LEVEL_UP_MOVE(11, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(15, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(17, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(21, MOVE_ICE_FANG),
LEVEL_UP_MOVE(23, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(25, MOVE_BRINE),
LEVEL_UP_MOVE(33, MOVE_DIVE),
LEVEL_UP_MOVE(33, MOVE_BATON_PASS),
LEVEL_UP_MOVE(39, MOVE_CRUNCH),
LEVEL_UP_MOVE(43, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(45, MOVE_COIL),
LEVEL_UP_MOVE(50, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sGorebyssLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 5, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 6, MOVE_CONFUSION),
LEVEL_UP_MOVE(10, MOVE_AGILITY),
LEVEL_UP_MOVE(11, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(15, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(19, MOVE_AMNESIA),
LEVEL_UP_MOVE(22, MOVE_AQUA_RING),
LEVEL_UP_MOVE(26, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(33, MOVE_DIVE),
LEVEL_UP_MOVE(33, MOVE_BATON_PASS),
LEVEL_UP_MOVE(39, MOVE_PSYCHIC),
LEVEL_UP_MOVE(43, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(45, MOVE_COIL),
LEVEL_UP_MOVE(50, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sRelicanthLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_HEAD_SMASH),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 7, MOVE_WATER_GUN),
LEVEL_UP_MOVE(15, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(22, MOVE_YAWN),
LEVEL_UP_MOVE(27, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(27, MOVE_MUD_SPORT),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(30, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(37, MOVE_DIVE),
LEVEL_UP_MOVE(40, MOVE_FLAIL),
LEVEL_UP_MOVE(48, MOVE_REST),
LEVEL_UP_MOVE(50, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(57, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(65, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sLuvdiscLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 4, MOVE_CHARM),
LEVEL_UP_MOVE( 6, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 9, MOVE_AGILITY),
LEVEL_UP_MOVE( 9, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(15, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(21, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(22, MOVE_HEART_STAMP),
LEVEL_UP_MOVE(23, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(24, MOVE_ATTRACT),
LEVEL_UP_MOVE(32, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(34, MOVE_FLAIL),
LEVEL_UP_MOVE(41, MOVE_AQUA_RING),
LEVEL_UP_MOVE(42, MOVE_SOAK),
LEVEL_UP_MOVE(43, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(44, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(52, MOVE_SAFEGUARD),
LEVEL_UP_END
};

static const struct LevelUpMove sBagonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 5, MOVE_BITE),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE(15, MOVE_HEADBUTT),
LEVEL_UP_MOVE(19, MOVE_EMBER),
LEVEL_UP_MOVE(20, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(27, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(32, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(34, MOVE_CRUNCH),
LEVEL_UP_MOVE(34, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(39, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(44, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(50, MOVE_OUTRAGE),
LEVEL_UP_MOVE(53, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sShelgonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 6, MOVE_BITE),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE(15, MOVE_HEADBUTT),
LEVEL_UP_MOVE(19, MOVE_EMBER),
LEVEL_UP_MOVE(27, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(29, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(30, MOVE_PROTECT),
LEVEL_UP_MOVE(35, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(37, MOVE_CRUNCH),
LEVEL_UP_MOVE(37, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(43, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(51, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(60, MOVE_OUTRAGE),
LEVEL_UP_MOVE(63, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sSalamenceLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FLY),
LEVEL_UP_MOVE( 1, MOVE_FLY),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 6, MOVE_BITE),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE(15, MOVE_HEADBUTT),
LEVEL_UP_MOVE(19, MOVE_EMBER),
LEVEL_UP_MOVE(27, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(29, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(30, MOVE_PROTECT),
LEVEL_UP_MOVE(35, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(37, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(39, MOVE_CRUNCH),
LEVEL_UP_MOVE(47, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(50, MOVE_FLY),
LEVEL_UP_MOVE(52, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(64, MOVE_OUTRAGE),
LEVEL_UP_MOVE(71, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(80, MOVE_DRAGON_TAIL),
LEVEL_UP_END
};

static const struct LevelUpMove sBeldumLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_END
};

static const struct LevelUpMove sMetangLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CONFUSION),
LEVEL_UP_MOVE( 0, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(12, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(18, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(20, MOVE_CONFUSION),
LEVEL_UP_MOVE(20, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(25, MOVE_PURSUIT),
LEVEL_UP_MOVE(26, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(27, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE(30, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE(33, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(47, MOVE_METEOR_MASH),
LEVEL_UP_MOVE(48, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(50, MOVE_AGILITY),
LEVEL_UP_MOVE(60, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sMetagrossLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(12, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(16, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(20, MOVE_CONFUSION),
LEVEL_UP_MOVE(20, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(25, MOVE_PURSUIT),
LEVEL_UP_MOVE(26, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE(29, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(30, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE(33, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(45, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(49, MOVE_METEOR_MASH),
LEVEL_UP_MOVE(51, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(53, MOVE_AGILITY),
LEVEL_UP_MOVE(71, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sRegirockLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_EXPLOSION),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_LOCK_ON),
LEVEL_UP_MOVE( 8, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(10, MOVE_BULLDOZE),
LEVEL_UP_MOVE(18, MOVE_STOMP),
LEVEL_UP_MOVE(22, MOVE_CURSE),
LEVEL_UP_MOVE(24, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(37, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(38, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(41, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(57, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(57, MOVE_LOCK_ON),
LEVEL_UP_MOVE(60, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(62, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(77, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(78, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sRegiceLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 1, MOVE_EXPLOSION),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_LOCK_ON),
LEVEL_UP_MOVE( 8, MOVE_ICY_WIND),
LEVEL_UP_MOVE(10, MOVE_BULLDOZE),
LEVEL_UP_MOVE(18, MOVE_STOMP),
LEVEL_UP_MOVE(22, MOVE_CURSE),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(37, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(38, MOVE_AMNESIA),
LEVEL_UP_MOVE(41, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(48, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(48, MOVE_BLIZZARD),
LEVEL_UP_MOVE(57, MOVE_LOCK_ON),
LEVEL_UP_MOVE(60, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(62, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(77, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(78, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sRegisteelLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_EXPLOSION),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_LOCK_ON),
LEVEL_UP_MOVE( 8, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(10, MOVE_BULLDOZE),
LEVEL_UP_MOVE(18, MOVE_STOMP),
LEVEL_UP_MOVE(22, MOVE_CURSE),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(37, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(38, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(38, MOVE_AMNESIA),
LEVEL_UP_MOVE(41, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(48, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(48, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(48, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(57, MOVE_LOCK_ON),
LEVEL_UP_MOVE(60, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(62, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(77, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(78, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sLatiasLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_HEALING_WISH),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_WISH),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 1, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE( 1, MOVE_REFLECT_TYPE),
LEVEL_UP_MOVE( 1, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE( 7, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(10, MOVE_STORED_POWER),
LEVEL_UP_MOVE(15, MOVE_CONFUSION),
LEVEL_UP_MOVE(15, MOVE_WISH),
LEVEL_UP_MOVE(15, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(19, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(20, MOVE_TAILWIND),
LEVEL_UP_MOVE(21, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(25, MOVE_REFRESH),
LEVEL_UP_MOVE(30, MOVE_RECOVER),
LEVEL_UP_MOVE(32, MOVE_MIST_BALL),
LEVEL_UP_MOVE(40, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(41, MOVE_CHARM),
LEVEL_UP_MOVE(46, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(54, MOVE_REFLECT_TYPE),
LEVEL_UP_MOVE(54, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(57, MOVE_PSYCHIC),
LEVEL_UP_MOVE(60, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(63, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(70, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sLatiosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE( 1, MOVE_MEMENTO),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 1, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE( 1, MOVE_TELEKINESIS),
LEVEL_UP_MOVE( 1, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE( 5, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE( 7, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(10, MOVE_STORED_POWER),
LEVEL_UP_MOVE(15, MOVE_CONFUSION),
LEVEL_UP_MOVE(15, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(19, MOVE_PROTECT),
LEVEL_UP_MOVE(20, MOVE_TAILWIND),
LEVEL_UP_MOVE(21, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(25, MOVE_REFRESH),
LEVEL_UP_MOVE(30, MOVE_RECOVER),
LEVEL_UP_MOVE(30, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE(32, MOVE_LUSTER_PURGE),
LEVEL_UP_MOVE(40, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(41, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(46, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(54, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(54, MOVE_TELEKINESIS),
LEVEL_UP_MOVE(55, MOVE_SIMPLE_BEAM),
LEVEL_UP_MOVE(57, MOVE_PSYCHIC),
LEVEL_UP_MOVE(60, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(63, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(75, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sKyogreLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 5, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(18, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(29, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(32, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(35, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(36, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(36, MOVE_CALM_MIND),
LEVEL_UP_MOVE(40, MOVE_AQUA_RING),
LEVEL_UP_MOVE(50, MOVE_REST),
LEVEL_UP_MOVE(56, MOVE_ORIGIN_PULSE),
LEVEL_UP_MOVE(59, MOVE_SHEER_COLD),
LEVEL_UP_MOVE(69, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(76, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(78, MOVE_WATER_SPOUT),
LEVEL_UP_END
};

static const struct LevelUpMove sGroudonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SHOT),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 5, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(17, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(20, MOVE_SLASH),
LEVEL_UP_MOVE(29, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(32, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(36, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(36, MOVE_BULK_UP),
LEVEL_UP_MOVE(41, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(43, MOVE_REST),
LEVEL_UP_MOVE(56, MOVE_PRECIPICE_BLADES),
LEVEL_UP_MOVE(59, MOVE_FISSURE),
LEVEL_UP_MOVE(69, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(72, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(78, MOVE_ERUPTION),
LEVEL_UP_END
};

static const struct LevelUpMove sRayquazaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_V_CREATE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_ASCENT),
LEVEL_UP_MOVE( 1, MOVE_TWISTER),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 5, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(18, MOVE_CRUNCH),
LEVEL_UP_MOVE(20, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(32, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(38, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(44, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(44, MOVE_REST),
LEVEL_UP_MOVE(49, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE(59, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(59, MOVE_FLY),
LEVEL_UP_MOVE(72, MOVE_HURRICANE),
LEVEL_UP_MOVE(72, MOVE_OUTRAGE),
LEVEL_UP_MOVE(82, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sJirachiLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_WISH),
LEVEL_UP_MOVE( 8, MOVE_SWIFT),
LEVEL_UP_MOVE(14, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(21, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(25, MOVE_REFRESH),
LEVEL_UP_MOVE(26, MOVE_REST),
LEVEL_UP_MOVE(27, MOVE_PSYCHIC),
LEVEL_UP_MOVE(30, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(32, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(41, MOVE_GRAVITY),
LEVEL_UP_MOVE(49, MOVE_METEOR_MASH),
LEVEL_UP_MOVE(52, MOVE_HEALING_WISH),
LEVEL_UP_MOVE(52, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(58, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(66, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(74, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(77, MOVE_DOOM_DESIRE),
LEVEL_UP_END
};

static const struct LevelUpMove sDeoxysLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 7, MOVE_NIGHT_SHADE),
//LEVEL_UP_MOVE(15, MOVE_TELEPORT),
LEVEL_UP_MOVE(22, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(29, MOVE_PURSUIT),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(43, MOVE_SNATCH),
LEVEL_UP_MOVE(52, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(59, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(63, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(70, MOVE_RECOVER),
LEVEL_UP_MOVE(77, MOVE_PSYCHO_BOOST),
LEVEL_UP_MOVE(84, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sTurtwigLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 9, MOVE_ABSORB),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(17, MOVE_CURSE),
LEVEL_UP_MOVE(21, MOVE_BITE),
LEVEL_UP_MOVE(25, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(29, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(33, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(37, MOVE_CRUNCH),
LEVEL_UP_MOVE(41, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(45, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sGrotleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 5, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 9, MOVE_ABSORB),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(17, MOVE_CURSE),
LEVEL_UP_MOVE(22, MOVE_BITE),
LEVEL_UP_MOVE(27, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(32, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(37, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(42, MOVE_CRUNCH),
LEVEL_UP_MOVE(47, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(52, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sTorterraLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE( 1, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE( 1, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 5, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 9, MOVE_ABSORB),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(17, MOVE_CURSE),
LEVEL_UP_MOVE(22, MOVE_BITE),
LEVEL_UP_MOVE(27, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(32, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(33, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(39, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(45, MOVE_CRUNCH),
LEVEL_UP_MOVE(51, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(57, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sChimcharLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_TAUNT),
LEVEL_UP_MOVE(15, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(23, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(25, MOVE_TORMENT),
LEVEL_UP_MOVE(31, MOVE_FACADE),
LEVEL_UP_MOVE(33, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(39, MOVE_ACROBATICS),
LEVEL_UP_MOVE(40, MOVE_SLACK_OFF),
LEVEL_UP_MOVE(45, MOVE_FLAMETHROWER),
LEVEL_UP_END
};

static const struct LevelUpMove sMonfernoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 7, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_TAUNT),
LEVEL_UP_MOVE(14, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE(16, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(19, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(26, MOVE_FEINT),
LEVEL_UP_MOVE(29, MOVE_TORMENT),
LEVEL_UP_MOVE(36, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(39, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(46, MOVE_ACROBATICS),
LEVEL_UP_MOVE(48, MOVE_SLACK_OFF),
LEVEL_UP_MOVE(53, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sInfernapeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 7, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_TAUNT),
LEVEL_UP_MOVE(14, MOVE_MACH_PUNCH),
LEVEL_UP_MOVE(16, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(19, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(26, MOVE_FEINT),
LEVEL_UP_MOVE(30, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(37, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(42, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(52, MOVE_ACROBATICS),
LEVEL_UP_MOVE(56, MOVE_CALM_MIND),
LEVEL_UP_MOVE(64, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sPiplupLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_BUBBLE),
LEVEL_UP_MOVE(11, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(15, MOVE_PECK),
LEVEL_UP_MOVE(18, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(21, MOVE_BIDE),
LEVEL_UP_MOVE(25, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(29, MOVE_BRINE),
LEVEL_UP_MOVE(32, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(36, MOVE_MIST),
LEVEL_UP_MOVE(39, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(43, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sPrinplupLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_BUBBLE),
LEVEL_UP_MOVE(11, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(15, MOVE_PECK),
LEVEL_UP_MOVE(16, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(19, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(23, MOVE_BIDE),
LEVEL_UP_MOVE(28, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(33, MOVE_BRINE),
LEVEL_UP_MOVE(37, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(42, MOVE_MIST),
LEVEL_UP_MOVE(46, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(50, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sEmpoleonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_BUBBLE),
LEVEL_UP_MOVE(11, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(15, MOVE_PECK),
LEVEL_UP_MOVE(16, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(19, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(23, MOVE_SWAGGER),
LEVEL_UP_MOVE(28, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(33, MOVE_BRINE),
LEVEL_UP_MOVE(36, MOVE_AQUA_JET),
LEVEL_UP_MOVE(39, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(46, MOVE_MIST),
LEVEL_UP_MOVE(52, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(59, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sStarlyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(17, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(21, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(25, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(29, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(33, MOVE_AGILITY),
LEVEL_UP_MOVE(37, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(41, MOVE_FINAL_GAMBIT),
LEVEL_UP_END
};

static const struct LevelUpMove sStaraviaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(18, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(23, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(28, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(33, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(38, MOVE_AGILITY),
LEVEL_UP_MOVE(43, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(48, MOVE_FINAL_GAMBIT),
LEVEL_UP_END
};

static const struct LevelUpMove sStaraptorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(18, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(23, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(28, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(33, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(34, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(41, MOVE_AGILITY),
LEVEL_UP_MOVE(49, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(57, MOVE_FINAL_GAMBIT),
LEVEL_UP_END
};

static const struct LevelUpMove sBidoofLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(12, MOVE_ROLLOUT),
LEVEL_UP_MOVE(16, MOVE_HEADBUTT),
LEVEL_UP_MOVE(20, MOVE_HYPER_FANG),
LEVEL_UP_MOVE(24, MOVE_YAWN),
LEVEL_UP_MOVE(25, MOVE_CRUNCH),
LEVEL_UP_MOVE(31, MOVE_AMNESIA),
LEVEL_UP_MOVE(32, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(36, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(37, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(41, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(45, MOVE_CURSE),
LEVEL_UP_END
};

static const struct LevelUpMove sBibarelLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_ROTOTILLER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(12, MOVE_ROLLOUT),
LEVEL_UP_MOVE(15, MOVE_WATER_GUN),
LEVEL_UP_MOVE(17, MOVE_HEADBUTT),
LEVEL_UP_MOVE(22, MOVE_HYPER_FANG),
LEVEL_UP_MOVE(27, MOVE_YAWN),
LEVEL_UP_MOVE(28, MOVE_CRUNCH),
LEVEL_UP_MOVE(35, MOVE_AMNESIA),
LEVEL_UP_MOVE(37, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(42, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(43, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(48, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(53, MOVE_CURSE),
LEVEL_UP_END
};

static const struct LevelUpMove sKricketotLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 6, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(11, MOVE_UPROAR),
LEVEL_UP_MOVE(14, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(16, MOVE_BUG_BITE),
LEVEL_UP_MOVE(16, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(20, MOVE_SLASH),
LEVEL_UP_MOVE(24, MOVE_CUT),
LEVEL_UP_MOVE(25, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(30, MOVE_NIGHT_SLASH),
LEVEL_UP_END
};

static const struct LevelUpMove sKricketuneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 1, MOVE_INFESTATION),
LEVEL_UP_MOVE( 1, MOVE_STICKY_WEB),
LEVEL_UP_MOVE( 1, MOVE_CUT),
LEVEL_UP_MOVE( 6, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(11, MOVE_UPROAR),
LEVEL_UP_MOVE(18, MOVE_SING),
LEVEL_UP_MOVE(22, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(25, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(27, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(29, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(31, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(33, MOVE_SCREECH),
LEVEL_UP_MOVE(36, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(38, MOVE_TAUNT),
LEVEL_UP_MOVE(40, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(42, MOVE_U_TURN),
LEVEL_UP_MOVE(44, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(46, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(48, MOVE_PERISH_SONG),
LEVEL_UP_MOVE(50, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(55, MOVE_BOOMBURST),
LEVEL_UP_MOVE(60, MOVE_CHATTER),
LEVEL_UP_MOVE(65, MOVE_SOLAR_BLADE),
LEVEL_UP_END
};

static const struct LevelUpMove sShinxLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 4, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 8, MOVE_CHARGE),
LEVEL_UP_MOVE(11, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(14, MOVE_BITE),
LEVEL_UP_MOVE(14, MOVE_SPARK),
LEVEL_UP_MOVE(20, MOVE_ROAR),
LEVEL_UP_MOVE(24, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE(29, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE(32, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(32, MOVE_SWAGGER),
LEVEL_UP_MOVE(33, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(33, MOVE_CRUNCH),
LEVEL_UP_MOVE(40, MOVE_DISCHARGE),
LEVEL_UP_MOVE(46, MOVE_WILD_CHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sLuxioLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 9, MOVE_CHARGE),
LEVEL_UP_MOVE(15, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_ROAR),
LEVEL_UP_MOVE(31, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE(33, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE(39, MOVE_SWAGGER),
LEVEL_UP_MOVE(40, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(41, MOVE_CRUNCH),
LEVEL_UP_MOVE(42, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(50, MOVE_DISCHARGE),
LEVEL_UP_MOVE(59, MOVE_WILD_CHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sLuxrayLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 9, MOVE_CHARGE),
LEVEL_UP_MOVE(15, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_ROAR),
LEVEL_UP_MOVE(33, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE(35, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE(44, MOVE_SWAGGER),
LEVEL_UP_MOVE(45, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(46, MOVE_CRUNCH),
LEVEL_UP_MOVE(48, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(58, MOVE_DISCHARGE),
LEVEL_UP_MOVE(67, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE(70, MOVE_WILD_CHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sBudewLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_WORRY_SEED),
LEVEL_UP_MOVE( 4, MOVE_GROWTH),
LEVEL_UP_MOVE( 7, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(10, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(13, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(16, MOVE_WORRY_SEED),
LEVEL_UP_END
};

static const struct LevelUpMove sRoseradeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 1, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 1, MOVE_TOXIC),
LEVEL_UP_MOVE( 1, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE( 1, MOVE_INGRAIN),
LEVEL_UP_MOVE( 1, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_WORRY_SEED),
LEVEL_UP_MOVE( 1, MOVE_WEATHER_BALL),
LEVEL_UP_MOVE(10, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(10, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(14, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(18, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(26, MOVE_GRASS_WHISTLE),
LEVEL_UP_MOVE(28, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(30, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(35, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(38, MOVE_TOXIC),
LEVEL_UP_MOVE(40, MOVE_INGRAIN),
LEVEL_UP_MOVE(41, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(43, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(45, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(48, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(50, MOVE_DAZZLING_GLEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sCranidosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 6, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(10, MOVE_PURSUIT),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(19, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(24, MOVE_ASSURANCE),
LEVEL_UP_MOVE(28, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(31, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(35, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(40, MOVE_SCREECH),
LEVEL_UP_MOVE(45, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sRampardosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ENDEAVOR),
LEVEL_UP_MOVE( 1, MOVE_ENDEAVOR),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 6, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(10, MOVE_PURSUIT),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(19, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(24, MOVE_ASSURANCE),
LEVEL_UP_MOVE(28, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(30, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(33, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(40, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(48, MOVE_SCREECH),
LEVEL_UP_MOVE(56, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sShieldonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 6, MOVE_TAUNT),
LEVEL_UP_MOVE(10, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(19, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(24, MOVE_SWAGGER),
LEVEL_UP_MOVE(28, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(33, MOVE_ENDURE),
LEVEL_UP_MOVE(37, MOVE_METAL_BURST),
LEVEL_UP_MOVE(42, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(46, MOVE_HEAVY_SLAM),
LEVEL_UP_END
};

static const struct LevelUpMove sBastiodonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_METAL_SOUND),
LEVEL_UP_MOVE( 6, MOVE_TAUNT),
LEVEL_UP_MOVE(10, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(19, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(24, MOVE_SWAGGER),
LEVEL_UP_MOVE(28, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(30, MOVE_BLOCK),
LEVEL_UP_MOVE(36, MOVE_ENDURE),
LEVEL_UP_MOVE(43, MOVE_METAL_BURST),
LEVEL_UP_MOVE(51, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(58, MOVE_HEAVY_SLAM),
LEVEL_UP_END
};

static const struct LevelUpMove sBurmyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE(10, MOVE_TACKLE),
LEVEL_UP_MOVE(15, MOVE_BUG_BITE),
LEVEL_UP_MOVE(20, MOVE_HIDDEN_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sWormadamLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE(10, MOVE_PROTECT),
LEVEL_UP_MOVE(15, MOVE_BUG_BITE),
LEVEL_UP_MOVE(20, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(23, MOVE_CONFUSION),
LEVEL_UP_MOVE(26, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(29, MOVE_GROWTH),
LEVEL_UP_MOVE(32, MOVE_PSYBEAM),
LEVEL_UP_MOVE(35, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(38, MOVE_FLAIL),
LEVEL_UP_MOVE(41, MOVE_ATTRACT),
LEVEL_UP_MOVE(44, MOVE_PSYCHIC),
LEVEL_UP_MOVE(47, MOVE_LEAF_STORM),
LEVEL_UP_MOVE(50, MOVE_BUG_BUZZ),
LEVEL_UP_END
};

static const struct LevelUpMove sMothimLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE(10, MOVE_PROTECT),
LEVEL_UP_MOVE(15, MOVE_BUG_BITE),
LEVEL_UP_MOVE(20, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(23, MOVE_CONFUSION),
LEVEL_UP_MOVE(26, MOVE_GUST),
LEVEL_UP_MOVE(29, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(32, MOVE_PSYBEAM),
LEVEL_UP_MOVE(35, MOVE_CAMOUFLAGE),
LEVEL_UP_MOVE(38, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(41, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(44, MOVE_PSYCHIC),
LEVEL_UP_MOVE(47, MOVE_LUNGE),
LEVEL_UP_MOVE(47, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(50, MOVE_QUIVER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sCombeeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE(13, MOVE_BUG_BITE),
LEVEL_UP_MOVE(29, MOVE_BUG_BUZZ),
LEVEL_UP_END
};

static const struct LevelUpMove sVespiquenLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_FELL_STINGER),
LEVEL_UP_MOVE( 1, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE( 3, MOVE_POISON_STING),
LEVEL_UP_MOVE( 5, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 7, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 8, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE(11, MOVE_PURSUIT),
LEVEL_UP_MOVE(15, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(24, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(24, MOVE_DEFEND_ORDER),
LEVEL_UP_MOVE(26, MOVE_POWER_GEM),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(27, MOVE_HEAL_ORDER),
LEVEL_UP_MOVE(31, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(32, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(32, MOVE_TOXIC),
LEVEL_UP_MOVE(35, MOVE_SWAGGER),
LEVEL_UP_MOVE(37, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(41, MOVE_ATTACK_ORDER),
LEVEL_UP_MOVE(47, MOVE_DESTINY_BOND),
LEVEL_UP_END
};

static const struct LevelUpMove sPachirisuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 5, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_CHARM),
LEVEL_UP_MOVE(13, MOVE_SPARK),
LEVEL_UP_MOVE(17, MOVE_ENDURE),
LEVEL_UP_MOVE(19, MOVE_NUZZLE),
LEVEL_UP_MOVE(21, MOVE_SWIFT),
LEVEL_UP_MOVE(25, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(27, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(33, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(35, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(37, MOVE_DISCHARGE),
LEVEL_UP_MOVE(42, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(49, MOVE_HYPER_FANG),
LEVEL_UP_END
};

static const struct LevelUpMove sBuizelLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 7, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(11, MOVE_WATER_GUN),
LEVEL_UP_MOVE(14, MOVE_PURSUIT),
LEVEL_UP_MOVE(18, MOVE_SWIFT),
LEVEL_UP_MOVE(22, MOVE_AQUA_JET),
LEVEL_UP_MOVE(27, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(33, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(35, MOVE_AGILITY),
LEVEL_UP_MOVE(39, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(40, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(45, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sFloatzelLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 7, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(11, MOVE_WATER_GUN),
LEVEL_UP_MOVE(14, MOVE_PURSUIT),
LEVEL_UP_MOVE(18, MOVE_SWIFT),
LEVEL_UP_MOVE(22, MOVE_AQUA_JET),
LEVEL_UP_MOVE(26, MOVE_CRUNCH),
LEVEL_UP_MOVE(29, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(36, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(41, MOVE_AGILITY),
LEVEL_UP_MOVE(44, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(48, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(57, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sCherubiLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MORNING_SUN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 8, MOVE_GROWTH),
LEVEL_UP_MOVE(13, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(15, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(19, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(22, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(30, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(32, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(39, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(40, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(40, MOVE_LUCKY_CHANT),
LEVEL_UP_END
};

static const struct LevelUpMove sCherrimLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE( 0, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE( 1, MOVE_FLOWER_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_MORNING_SUN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 7, MOVE_GROWTH),
LEVEL_UP_MOVE(13, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(16, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(19, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(22, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(34, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(36, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(40, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(44, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(47, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(48, MOVE_LUCKY_CHANT),
LEVEL_UP_END
};

static const struct LevelUpMove sShellosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 2, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 9, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(11, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(16, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(20, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(27, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(28, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(32, MOVE_RECOVER),
LEVEL_UP_MOVE(34, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(35, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(45, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sGastrodonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_RECOVER),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 2, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 9, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(11, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(16, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(20, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(27, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(30, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(38, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(39, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(53, MOVE_MEMENTO),
LEVEL_UP_MOVE(54, MOVE_RECOVER),
LEVEL_UP_END
};

static const struct LevelUpMove sAmbipomLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_ASTONISH),
LEVEL_UP_MOVE(11, MOVE_BATON_PASS),
LEVEL_UP_MOVE(15, MOVE_TICKLE),
LEVEL_UP_MOVE(18, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(22, MOVE_SWIFT),
LEVEL_UP_MOVE(25, MOVE_SCREECH),
LEVEL_UP_MOVE(29, MOVE_AGILITY),
LEVEL_UP_MOVE(32, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(36, MOVE_FLING),
LEVEL_UP_MOVE(39, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(43, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sDrifloonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 4, MOVE_ASTONISH),
LEVEL_UP_MOVE( 7, MOVE_GUST),
LEVEL_UP_MOVE(11, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(14, MOVE_PAYBACK),
LEVEL_UP_MOVE(21, MOVE_HEX),
LEVEL_UP_MOVE(24, MOVE_STOCKPILE),
LEVEL_UP_MOVE(24, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(27, MOVE_SWALLOW),
LEVEL_UP_MOVE(27, MOVE_SPIT_UP),
LEVEL_UP_MOVE(29, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(31, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(32, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(38, MOVE_BATON_PASS),
LEVEL_UP_MOVE(40, MOVE_TAILWIND),
LEVEL_UP_MOVE(40, MOVE_AMNESIA),
LEVEL_UP_MOVE(46, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sDrifblimLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE( 1, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE( 1, MOVE_STRENGTH_SAP),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 4, MOVE_ASTONISH),
LEVEL_UP_MOVE( 9, MOVE_GUST),
LEVEL_UP_MOVE(13, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(14, MOVE_PAYBACK),
LEVEL_UP_MOVE(21, MOVE_HEX),
LEVEL_UP_MOVE(24, MOVE_STOCKPILE),
LEVEL_UP_MOVE(25, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(28, MOVE_SWALLOW),
LEVEL_UP_MOVE(28, MOVE_SPIT_UP),
LEVEL_UP_MOVE(31, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(34, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(36, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(44, MOVE_BATON_PASS),
LEVEL_UP_MOVE(46, MOVE_AMNESIA),
LEVEL_UP_MOVE(48, MOVE_TAILWIND),
LEVEL_UP_MOVE(55, MOVE_EXPLOSION),
LEVEL_UP_MOVE(65, MOVE_PHANTOM_FORCE),
LEVEL_UP_END
};

static const struct LevelUpMove sBunearyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_FRUSTRATION),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 6, MOVE_ENDURE),
LEVEL_UP_MOVE( 9, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(13, MOVE_FRUSTRATION),
LEVEL_UP_MOVE(16, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(20, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(23, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(26, MOVE_BATON_PASS),
LEVEL_UP_MOVE(28, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(32, MOVE_HEADBUTT),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(36, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE(37, MOVE_CHARM),
LEVEL_UP_MOVE(44, MOVE_FLATTER),
LEVEL_UP_MOVE(46, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(51, MOVE_BOUNCE),
LEVEL_UP_MOVE(57, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sLopunnyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_RETURN),
LEVEL_UP_MOVE( 1, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE( 1, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 1, MOVE_RETURN),
LEVEL_UP_MOVE( 1, MOVE_HEALING_WISH),
LEVEL_UP_MOVE( 1, MOVE_BOUNCE),
LEVEL_UP_MOVE( 1, MOVE_ROTOTILLER),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 6, MOVE_ENDURE),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(13, MOVE_RETURN),
LEVEL_UP_MOVE(16, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(20, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(23, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(26, MOVE_BATON_PASS),
LEVEL_UP_MOVE(28, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(32, MOVE_HEADBUTT),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(36, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE(37, MOVE_CHARM),
LEVEL_UP_MOVE(44, MOVE_FLATTER),
LEVEL_UP_MOVE(47, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(51, MOVE_BOUNCE),
LEVEL_UP_MOVE(57, MOVE_HEALING_WISH),
LEVEL_UP_MOVE(59, MOVE_HI_JUMP_KICK),
LEVEL_UP_END
};

static const struct LevelUpMove sMismagiusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MYSTICAL_FIRE),
LEVEL_UP_MOVE( 1, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE( 1, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 1, MOVE_SPITE),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_END
};

static const struct LevelUpMove sHonchkrowLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(25, MOVE_SWAGGER),
LEVEL_UP_MOVE(35, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(45, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(52, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(65, MOVE_QUASH),
LEVEL_UP_MOVE(69, MOVE_DARK_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sGlameowLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 5, MOVE_SCRATCH),
LEVEL_UP_MOVE( 8, MOVE_GROWL),
LEVEL_UP_MOVE(13, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(20, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(25, MOVE_CHARM),
LEVEL_UP_MOVE(29, MOVE_ASSIST),
LEVEL_UP_MOVE(32, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(37, MOVE_SLASH),
LEVEL_UP_MOVE(41, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(44, MOVE_ATTRACT),
LEVEL_UP_MOVE(48, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(50, MOVE_PLAY_ROUGH),
LEVEL_UP_END
};

static const struct LevelUpMove sPuruglyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_SCRATCH),
LEVEL_UP_MOVE( 8, MOVE_GROWL),
LEVEL_UP_MOVE(13, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(20, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(25, MOVE_CHARM),
LEVEL_UP_MOVE(29, MOVE_ASSIST),
LEVEL_UP_MOVE(32, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(37, MOVE_SLASH),
LEVEL_UP_MOVE(38, MOVE_SWAGGER),
LEVEL_UP_MOVE(45, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(52, MOVE_ATTRACT),
LEVEL_UP_MOVE(60, MOVE_HONE_CLAWS),
LEVEL_UP_END
};

static const struct LevelUpMove sChinglingLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(13, MOVE_YAWN),
LEVEL_UP_MOVE(20, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(21, MOVE_UPROAR),
LEVEL_UP_MOVE(22, MOVE_ENTRAINMENT),
LEVEL_UP_END
};

static const struct LevelUpMove sStunkyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 3, MOVE_POISON_GAS),
LEVEL_UP_MOVE(10, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(11, MOVE_FEINT),
LEVEL_UP_MOVE(11, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(13, MOVE_SCREECH),
LEVEL_UP_MOVE(15, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(18, MOVE_BITE),
LEVEL_UP_MOVE(19, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(21, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(22, MOVE_SLASH),
LEVEL_UP_MOVE(26, MOVE_TOXIC),
LEVEL_UP_MOVE(32, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(35, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(37, MOVE_MEMENTO),
LEVEL_UP_MOVE(40, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(41, MOVE_BELCH),
LEVEL_UP_MOVE(46, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sSkuntankLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE( 1, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 3, MOVE_POISON_GAS),
LEVEL_UP_MOVE(10, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(13, MOVE_SCREECH),
LEVEL_UP_MOVE(13, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(15, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(17, MOVE_FEINT),
LEVEL_UP_MOVE(18, MOVE_BITE),
LEVEL_UP_MOVE(19, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(21, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(22, MOVE_SLASH),
LEVEL_UP_MOVE(26, MOVE_TOXIC),
LEVEL_UP_MOVE(32, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(34, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(37, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(40, MOVE_MEMENTO),
LEVEL_UP_MOVE(45, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(46, MOVE_BELCH),
LEVEL_UP_MOVE(54, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sBronzorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 9, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(10, MOVE_IMPRISON),
LEVEL_UP_MOVE(11, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(15, MOVE_PSYWAVE),
LEVEL_UP_MOVE(25, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(27, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(27, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(29, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(29, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(30, MOVE_PAYBACK),
LEVEL_UP_MOVE(35, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(36, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(41, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(47, MOVE_HEAL_BLOCK),
LEVEL_UP_END
};

static const struct LevelUpMove sBronzongLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE( 1, MOVE_WEATHER_BALL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_PAYBACK),
LEVEL_UP_MOVE( 1, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE(10, MOVE_IMPRISON),
LEVEL_UP_MOVE(11, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(12, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(15, MOVE_PSYWAVE),
LEVEL_UP_MOVE(25, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(27, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(29, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(30, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(33, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(33, MOVE_BLOCK),
LEVEL_UP_MOVE(37, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(40, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(47, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(52, MOVE_PAYBACK),
LEVEL_UP_MOVE(56, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(58, MOVE_HEAL_BLOCK),
LEVEL_UP_END
};

static const struct LevelUpMove sBonslyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 4, MOVE_FLAIL),
LEVEL_UP_MOVE(11, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(17, MOVE_MIMIC),
LEVEL_UP_MOVE(18, MOVE_LOW_KICK),
LEVEL_UP_MOVE(20, MOVE_BLOCK),
LEVEL_UP_MOVE(21, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(23, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(23, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE(31, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(32, MOVE_SLAM),
LEVEL_UP_MOVE(34, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(37, MOVE_COUNTER),
LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sMimeJrLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_BARRIER),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_TICKLE),
LEVEL_UP_MOVE( 4, MOVE_COPYCAT),
LEVEL_UP_MOVE( 8, MOVE_MEDITATE),
LEVEL_UP_MOVE(12, MOVE_ENCORE),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(12, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(20, MOVE_PROTECT),
LEVEL_UP_MOVE(22, MOVE_MIMIC),
LEVEL_UP_MOVE(26, MOVE_PSYBEAM),
LEVEL_UP_MOVE(27, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(27, MOVE_REFLECT),
LEVEL_UP_MOVE(29, MOVE_RECYCLE),
LEVEL_UP_MOVE(29, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(30, MOVE_BATON_PASS),
LEVEL_UP_MOVE(33, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE(36, MOVE_TRICK),
LEVEL_UP_MOVE(40, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(42, MOVE_PSYCHIC),
LEVEL_UP_MOVE(44, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(44, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(52, MOVE_TEETER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sHappinyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 5, MOVE_COPYCAT),
LEVEL_UP_MOVE( 9, MOVE_REFRESH),
LEVEL_UP_MOVE(10, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(12, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(16, MOVE_COVET),
LEVEL_UP_MOVE(20, MOVE_CHARM),
LEVEL_UP_END
};

static const struct LevelUpMove sChatotLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE( 1, MOVE_CHATTER),
LEVEL_UP_MOVE( 1, MOVE_CONFIDE),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 9, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(13, MOVE_SING),
LEVEL_UP_MOVE(17, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(21, MOVE_CHATTER),
LEVEL_UP_MOVE(25, MOVE_TAUNT),
LEVEL_UP_MOVE(29, MOVE_ROUND),
LEVEL_UP_MOVE(31, MOVE_MIMIC),
LEVEL_UP_MOVE(37, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(38, MOVE_ROOST),
LEVEL_UP_MOVE(42, MOVE_UPROAR),
LEVEL_UP_MOVE(48, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(49, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(53, MOVE_HYPER_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sSpiritombLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 1, MOVE_SPITE),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 5, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 7, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(10, MOVE_SPITE),
LEVEL_UP_MOVE(15, MOVE_PAYBACK),
LEVEL_UP_MOVE(25, MOVE_HEX),
LEVEL_UP_MOVE(25, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(28, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(30, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(32, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(34, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(38, MOVE_MEMENTO),
LEVEL_UP_MOVE(40, MOVE_CURSE),
LEVEL_UP_MOVE(45, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(49, MOVE_DARK_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sGibleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(12, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(18, MOVE_BULLDOZE),
LEVEL_UP_MOVE(19, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(25, MOVE_BITE),
LEVEL_UP_MOVE(25, MOVE_SANDSTORM),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(29, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(30, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(35, MOVE_DIG),
LEVEL_UP_MOVE(45, MOVE_DRAGON_RUSH),
LEVEL_UP_END
};

static const struct LevelUpMove sGabiteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE( 1, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE( 1, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 3, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(18, MOVE_BULLDOZE),
LEVEL_UP_MOVE(19, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(24, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE(27, MOVE_BITE),
LEVEL_UP_MOVE(29, MOVE_SANDSTORM),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(33, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(36, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(43, MOVE_DIG),
LEVEL_UP_MOVE(58, MOVE_DRAGON_RUSH),
LEVEL_UP_END
};

static const struct LevelUpMove sGarchompLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE( 1, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 1, MOVE_SANDSTORM),
LEVEL_UP_MOVE( 3, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(18, MOVE_BULLDOZE),
LEVEL_UP_MOVE(19, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(24, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE(27, MOVE_BITE),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(31, MOVE_SANDSTORM),
LEVEL_UP_MOVE(36, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(36, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(44, MOVE_DIG),
LEVEL_UP_MOVE(48, MOVE_CRUNCH),
LEVEL_UP_MOVE(64, MOVE_DRAGON_RUSH),
LEVEL_UP_END
};

static const struct LevelUpMove sMunchlaxLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LAST_RESORT),
LEVEL_UP_MOVE( 1, MOVE_RECYCLE),
LEVEL_UP_MOVE( 1, MOVE_METRONOME),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 1, MOVE_SNATCH),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(12, MOVE_RECYCLE),
LEVEL_UP_MOVE(12, MOVE_COVET),
LEVEL_UP_MOVE(12, MOVE_LICK),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_AMNESIA),
LEVEL_UP_MOVE(19, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(21, MOVE_SCREECH),
LEVEL_UP_MOVE(24, MOVE_STOCKPILE),
LEVEL_UP_MOVE(27, MOVE_SWALLOW),
LEVEL_UP_MOVE(29, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(36, MOVE_FLING),
LEVEL_UP_MOVE(39, MOVE_ROLLOUT),
LEVEL_UP_MOVE(40, MOVE_METRONOME),
LEVEL_UP_MOVE(44, MOVE_FLAIL),
LEVEL_UP_MOVE(46, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(47, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(51, MOVE_SNATCH),
LEVEL_UP_MOVE(53, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sRioluLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ENDURE),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 8, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 8, MOVE_COUNTER),
LEVEL_UP_MOVE( 9, MOVE_FEINT),
LEVEL_UP_MOVE(16, MOVE_WORK_UP),
LEVEL_UP_MOVE(20, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(21, MOVE_FORCE_PALM),
LEVEL_UP_MOVE(25, MOVE_SCREECH),
LEVEL_UP_MOVE(32, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(32, MOVE_COPYCAT),
LEVEL_UP_MOVE(36, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(36, MOVE_REVERSAL),
LEVEL_UP_MOVE(40, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(44, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(51, MOVE_FINAL_GAMBIT),
LEVEL_UP_END
};

static const struct LevelUpMove sLucarioLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE( 1, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE( 1, MOVE_LIFE_DEW),
LEVEL_UP_MOVE( 1, MOVE_WORK_UP),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_FORCE_PALM),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_FINAL_GAMBIT),
LEVEL_UP_MOVE( 1, MOVE_REVERSAL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_DETECT),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 1, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_DARK_PULSE),
LEVEL_UP_MOVE( 8, MOVE_COUNTER),
LEVEL_UP_MOVE(11, MOVE_FORCE_PALM),
LEVEL_UP_MOVE(12, MOVE_FEINT),
LEVEL_UP_MOVE(16, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(17, MOVE_POWER_UP_PUNCH),
LEVEL_UP_MOVE(25, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(28, MOVE_BONE_RUSH),
LEVEL_UP_MOVE(31, MOVE_ME_FIRST),
LEVEL_UP_MOVE(32, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(32, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(36, MOVE_CALM_MIND),
LEVEL_UP_MOVE(42, MOVE_WORK_UP),
LEVEL_UP_MOVE(42, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE(46, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(48, MOVE_METEOR_MASH),
LEVEL_UP_MOVE(54, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(54, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(59, MOVE_EXTREME_SPEED),
LEVEL_UP_END
};

static const struct LevelUpMove sHippopotasLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_BITE),
LEVEL_UP_MOVE(11, MOVE_YAWN),
LEVEL_UP_MOVE(17, MOVE_DIG),
LEVEL_UP_MOVE(20, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(22, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(24, MOVE_SANDSTORM),
LEVEL_UP_MOVE(26, MOVE_CRUNCH),
LEVEL_UP_MOVE(32, MOVE_ROAR),
LEVEL_UP_MOVE(36, MOVE_REST),
LEVEL_UP_MOVE(38, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(44, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(49, MOVE_FISSURE),
LEVEL_UP_MOVE(52, MOVE_SLACK_OFF),
LEVEL_UP_END
};

static const struct LevelUpMove sHippowdonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 7, MOVE_BITE),
LEVEL_UP_MOVE(13, MOVE_YAWN),
LEVEL_UP_MOVE(17, MOVE_DIG),
LEVEL_UP_MOVE(20, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(22, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(24, MOVE_SANDSTORM),
LEVEL_UP_MOVE(26, MOVE_CRUNCH),
LEVEL_UP_MOVE(32, MOVE_ROAR),
LEVEL_UP_MOVE(38, MOVE_REST),
LEVEL_UP_MOVE(41, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(50, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(58, MOVE_FISSURE),
LEVEL_UP_MOVE(62, MOVE_SLACK_OFF),
LEVEL_UP_END
};

static const struct LevelUpMove sSkorupiLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 6, MOVE_LEER),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(13, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(16, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(19, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(22, MOVE_POISON_FANG),
LEVEL_UP_MOVE(22, MOVE_BUG_BITE),
LEVEL_UP_MOVE(24, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(25, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(25, MOVE_ACUPRESSURE),
LEVEL_UP_MOVE(26, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(31, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(33, MOVE_TOXIC),
LEVEL_UP_MOVE(37, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(42, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(46, MOVE_CROSS_POISON),
LEVEL_UP_MOVE(46, MOVE_CRUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sDrapionLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_FELL_STINGER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE( 1, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE( 6, MOVE_LEER),
LEVEL_UP_MOVE(11, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(16, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(22, MOVE_POISON_FANG),
LEVEL_UP_MOVE(22, MOVE_BUG_BITE),
LEVEL_UP_MOVE(25, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(27, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(27, MOVE_ACUPRESSURE),
LEVEL_UP_MOVE(32, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(33, MOVE_TOXIC),
LEVEL_UP_MOVE(33, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(37, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(44, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(51, MOVE_CROSS_POISON),
LEVEL_UP_MOVE(52, MOVE_CRUNCH),
LEVEL_UP_MOVE(53, MOVE_FELL_STINGER),
LEVEL_UP_END
};

static const struct LevelUpMove sCroagunkLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 3, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 4, MOVE_ASTONISH),
LEVEL_UP_MOVE( 8, MOVE_POISON_STING),
LEVEL_UP_MOVE( 9, MOVE_TAUNT),
LEVEL_UP_MOVE(15, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(19, MOVE_REVENGE),
LEVEL_UP_MOVE(25, MOVE_SWAGGER),
LEVEL_UP_MOVE(28, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(28, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(29, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(35, MOVE_FLATTER),
LEVEL_UP_MOVE(36, MOVE_TOXIC),
LEVEL_UP_MOVE(38, MOVE_POISON_JAB),
LEVEL_UP_MOVE(38, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(44, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(47, MOVE_BELCH),
LEVEL_UP_END
};

static const struct LevelUpMove sToxicroakLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 3, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 8, MOVE_POISON_STING),
LEVEL_UP_MOVE(10, MOVE_TAUNT),
LEVEL_UP_MOVE(15, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(19, MOVE_REVENGE),
LEVEL_UP_MOVE(25, MOVE_SWAGGER),
LEVEL_UP_MOVE(28, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(28, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(29, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(36, MOVE_TOXIC),
LEVEL_UP_MOVE(40, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(41, MOVE_POISON_JAB),
LEVEL_UP_MOVE(42, MOVE_FLATTER),
LEVEL_UP_MOVE(50, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(55, MOVE_BELCH),
LEVEL_UP_END
};

static const struct LevelUpMove sCarnivineLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 7, MOVE_BITE),
LEVEL_UP_MOVE(11, MOVE_VINE_WHIP),
LEVEL_UP_MOVE(17, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(21, MOVE_INGRAIN),
LEVEL_UP_MOVE(27, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(31, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE(35, MOVE_STOCKPILE),
LEVEL_UP_MOVE(35, MOVE_SPIT_UP),
LEVEL_UP_MOVE(35, MOVE_SWALLOW),
LEVEL_UP_MOVE(39, MOVE_CRUNCH),
LEVEL_UP_MOVE(45, MOVE_WRING_OUT),
LEVEL_UP_MOVE(49, MOVE_POWER_WHIP),
LEVEL_UP_END
};

static const struct LevelUpMove sFinneonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 6, MOVE_WATER_GUN),
LEVEL_UP_MOVE(10, MOVE_ATTRACT),
LEVEL_UP_MOVE(13, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(17, MOVE_GUST),
LEVEL_UP_MOVE(22, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(26, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(29, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(33, MOVE_AQUA_RING),
LEVEL_UP_MOVE(38, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(42, MOVE_U_TURN),
LEVEL_UP_MOVE(45, MOVE_BOUNCE),
LEVEL_UP_MOVE(49, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(54, MOVE_SOAK),
LEVEL_UP_END
};

static const struct LevelUpMove sLumineonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SOAK),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_ATTRACT),
LEVEL_UP_MOVE( 6, MOVE_WATER_GUN),
LEVEL_UP_MOVE(10, MOVE_ATTRACT),
LEVEL_UP_MOVE(13, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(17, MOVE_GUST),
LEVEL_UP_MOVE(22, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(26, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(29, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(35, MOVE_AQUA_RING),
LEVEL_UP_MOVE(42, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(48, MOVE_U_TURN),
LEVEL_UP_MOVE(53, MOVE_BOUNCE),
LEVEL_UP_MOVE(59, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(66, MOVE_SOAK),
LEVEL_UP_END
};

static const struct LevelUpMove sMantykeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 3, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(13, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(14, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(18, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(19, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(19, MOVE_HEADBUTT),
LEVEL_UP_MOVE(21, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(24, MOVE_AGILITY),
LEVEL_UP_MOVE(34, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(34, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(39, MOVE_AQUA_RING),
LEVEL_UP_MOVE(42, MOVE_BOUNCE),
LEVEL_UP_MOVE(48, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sSnoverLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_LEAFAGE),
LEVEL_UP_MOVE(10, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(13, MOVE_GRASS_WHISTLE),
LEVEL_UP_MOVE(14, MOVE_ICY_WIND),
LEVEL_UP_MOVE(16, MOVE_MIST),
LEVEL_UP_MOVE(21, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(21, MOVE_SWAGGER),
LEVEL_UP_MOVE(32, MOVE_INGRAIN),
LEVEL_UP_MOVE(37, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(42, MOVE_BLIZZARD),
LEVEL_UP_MOVE(47, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sAbomasnowLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_AURORA_VEIL),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_ICY_WIND),
LEVEL_UP_MOVE(10, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(13, MOVE_GRASS_WHISTLE),
LEVEL_UP_MOVE(14, MOVE_ICY_WIND),
LEVEL_UP_MOVE(21, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(21, MOVE_SWAGGER),
LEVEL_UP_MOVE(21, MOVE_MIST),
LEVEL_UP_MOVE(32, MOVE_INGRAIN),
LEVEL_UP_MOVE(38, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(47, MOVE_BLIZZARD),
LEVEL_UP_MOVE(57, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sWeavileLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_REVENGE),
LEVEL_UP_MOVE( 1, MOVE_ASSURANCE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BEAT_UP),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 1, MOVE_EMBARGO),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(11, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(21, MOVE_ICY_WIND),
LEVEL_UP_MOVE(22, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(26, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(30, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(31, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(34, MOVE_SCREECH),
LEVEL_UP_MOVE(36, MOVE_FLING),
LEVEL_UP_MOVE(40, MOVE_SNATCH),
LEVEL_UP_MOVE(44, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(44, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(54, MOVE_DARK_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sMagnezoneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_MAGNETIC_FLUX),
LEVEL_UP_MOVE( 1, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_BARRIER),
LEVEL_UP_MOVE( 1, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 1, MOVE_METAL_SOUND),
LEVEL_UP_MOVE( 6, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 7, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(11, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE(13, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE(14, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(20, MOVE_SPARK),
LEVEL_UP_MOVE(22, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(22, MOVE_MAGNET_BOMB),
LEVEL_UP_MOVE(33, MOVE_SCREECH),
LEVEL_UP_MOVE(33, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(34, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(36, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(42, MOVE_DISCHARGE),
LEVEL_UP_MOVE(43, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(43, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(44, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(47, MOVE_LOCK_ON),
LEVEL_UP_MOVE(64, MOVE_ZAP_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sLickilickyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_WRING_OUT),
LEVEL_UP_MOVE( 1, MOVE_POWER_WHIP),
LEVEL_UP_MOVE( 5, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 9, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(17, MOVE_WRAP),
LEVEL_UP_MOVE(21, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(24, MOVE_DISABLE),
LEVEL_UP_MOVE(24, MOVE_STOMP),
LEVEL_UP_MOVE(33, MOVE_ROLLOUT),
LEVEL_UP_MOVE(36, MOVE_SLAM),
LEVEL_UP_MOVE(37, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(39, MOVE_ME_FIRST),
LEVEL_UP_MOVE(40, MOVE_WISH),
LEVEL_UP_MOVE(43, MOVE_REFRESH),
LEVEL_UP_MOVE(45, MOVE_SCREECH),
LEVEL_UP_MOVE(48, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(52, MOVE_POWER_WHIP),
LEVEL_UP_MOVE(55, MOVE_WRING_OUT),
LEVEL_UP_MOVE(59, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(60, MOVE_BELLY_DRUM),
LEVEL_UP_END
};

static const struct LevelUpMove sRhyperiorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_ROCK_WRECKER),
LEVEL_UP_MOVE( 1, MOVE_HORN_DRILL),
LEVEL_UP_MOVE( 1, MOVE_POISON_JAB),
LEVEL_UP_MOVE( 1, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE(12, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(13, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(15, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(16, MOVE_STOMP),
LEVEL_UP_MOVE(17, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(21, MOVE_BULLDOZE),
LEVEL_UP_MOVE(27, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(27, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(38, MOVE_DRILL_RUN),
LEVEL_UP_MOVE(38, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(42, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(50, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(51, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(61, MOVE_HORN_DRILL),
LEVEL_UP_MOVE(63, MOVE_MEGAHORN),
LEVEL_UP_MOVE(73, MOVE_ROCK_WRECKER),
LEVEL_UP_END
};

static const struct LevelUpMove sTangrowthLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_INGRAIN),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 9, MOVE_ABSORB),
LEVEL_UP_MOVE(13, MOVE_VINE_WHIP),
LEVEL_UP_MOVE(16, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(16, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(16, MOVE_GROWTH),
LEVEL_UP_MOVE(19, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(19, MOVE_BIND),
LEVEL_UP_MOVE(29, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(29, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(32, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(34, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(35, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(41, MOVE_SLAM),
LEVEL_UP_MOVE(45, MOVE_TICKLE),
LEVEL_UP_MOVE(49, MOVE_WRING_OUT),
LEVEL_UP_MOVE(51, MOVE_POWER_WHIP),
LEVEL_UP_MOVE(52, MOVE_INGRAIN),
LEVEL_UP_MOVE(53, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE(56, MOVE_BLOCK),
LEVEL_UP_END
};

static const struct LevelUpMove sElectivireLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_ION_DELUGE),
LEVEL_UP_MOVE( 1, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(13, MOVE_SWIFT),
LEVEL_UP_MOVE(16, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(19, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(20, MOVE_LOW_KICK),
LEVEL_UP_MOVE(23, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(29, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE(35, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(36, MOVE_DISCHARGE),
LEVEL_UP_MOVE(38, MOVE_SCREECH),
LEVEL_UP_MOVE(46, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(57, MOVE_THUNDER),
LEVEL_UP_MOVE(64, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE(65, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sMagmortarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE( 8, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(13, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(15, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(16, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(16, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(23, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(23, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(24, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(29, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE(36, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(40, MOVE_LOW_KICK),
LEVEL_UP_MOVE(46, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(48, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(57, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(64, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sTogekissLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 1, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE( 1, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE( 1, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_METRONOME),
LEVEL_UP_MOVE( 1, MOVE_AFTER_YOU),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 1, MOVE_FOLLOW_ME),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_LAST_RESORT),
LEVEL_UP_MOVE( 1, MOVE_WISH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_LIFE_DEW),
LEVEL_UP_END
};

static const struct LevelUpMove sYanmegaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 6, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(11, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(14, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE(17, MOVE_DETECT),
LEVEL_UP_MOVE(22, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(27, MOVE_UPROAR),
LEVEL_UP_MOVE(30, MOVE_PURSUIT),
LEVEL_UP_MOVE(33, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(38, MOVE_FEINT),
LEVEL_UP_MOVE(42, MOVE_SLASH),
LEVEL_UP_MOVE(45, MOVE_SCREECH),
LEVEL_UP_MOVE(48, MOVE_U_TURN),
LEVEL_UP_MOVE(53, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(56, MOVE_BUG_BUZZ),
LEVEL_UP_END
};

static const struct LevelUpMove sLeafeonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(20, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(26, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(30, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(33, MOVE_GRASS_WHISTLE),
LEVEL_UP_MOVE(35, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(43, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(45, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(53, MOVE_LEAF_BLADE),
LEVEL_UP_END
};

static const struct LevelUpMove sGlaceonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 1, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_ICY_WIND),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(23, MOVE_BITE),
LEVEL_UP_MOVE(26, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(29, MOVE_ICE_FANG),
LEVEL_UP_MOVE(40, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(43, MOVE_HAIL),
LEVEL_UP_MOVE(43, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(46, MOVE_BARRIER),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(53, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sGliscorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUILLOTINE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_POISON_JAB),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_HARDEN),
LEVEL_UP_MOVE(10, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(17, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(20, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(22, MOVE_ACROBATICS),
LEVEL_UP_MOVE(29, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(32, MOVE_SCREECH),
LEVEL_UP_MOVE(33, MOVE_U_TURN),
LEVEL_UP_MOVE(41, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(43, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(45, MOVE_SKY_UPPERCUT),
LEVEL_UP_MOVE(51, MOVE_GUILLOTINE),
LEVEL_UP_END
};

static const struct LevelUpMove sMamoswineLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 4, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 8, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(11, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(15, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(18, MOVE_ENDURE),
LEVEL_UP_MOVE(18, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(22, MOVE_HAIL),
LEVEL_UP_MOVE(25, MOVE_ICE_FANG),
LEVEL_UP_MOVE(30, MOVE_ICY_WIND),
LEVEL_UP_MOVE(33, MOVE_MIST),
LEVEL_UP_MOVE(33, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(34, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(37, MOVE_AMNESIA),
LEVEL_UP_MOVE(46, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(53, MOVE_THRASH),
LEVEL_UP_MOVE(55, MOVE_BLIZZARD),
LEVEL_UP_MOVE(60, MOVE_SCARY_FACE),
LEVEL_UP_END
};

static const struct LevelUpMove sPorygonZLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TRICK_ROOM),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CONVERSION),
LEVEL_UP_MOVE( 1, MOVE_RECYCLE),
LEVEL_UP_MOVE( 1, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE( 1, MOVE_CONVERSION_2),
LEVEL_UP_MOVE(11, MOVE_PSYBEAM),
LEVEL_UP_MOVE(15, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(18, MOVE_AGILITY),
LEVEL_UP_MOVE(23, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(24, MOVE_RECOVER),
LEVEL_UP_MOVE(25, MOVE_CONVERSION_2),
LEVEL_UP_MOVE(29, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(34, MOVE_EMBARGO),
LEVEL_UP_MOVE(40, MOVE_DISCHARGE),
LEVEL_UP_MOVE(48, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE(48, MOVE_LOCK_ON),
LEVEL_UP_MOVE(53, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(61, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(66, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sGalladeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 1, MOVE_LIFE_DEW),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 1, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 1, MOVE_DREAM_EATER),
LEVEL_UP_MOVE( 1, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 5, MOVE_CONFUSION),
LEVEL_UP_MOVE( 8, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(12, MOVE_TELEPORT),
LEVEL_UP_MOVE(16, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(17, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(21, MOVE_SLASH),
LEVEL_UP_MOVE(26, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(30, MOVE_FEINT),
LEVEL_UP_MOVE(30, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(34, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(36, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(37, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(40, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(42, MOVE_PROTECT),
LEVEL_UP_MOVE(44, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(58, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(61, MOVE_STORED_POWER),
LEVEL_UP_END
};

static const struct LevelUpMove sProbopassLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_MAGNETIC_FLUX),
LEVEL_UP_MOVE( 1, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE( 1, MOVE_GRAVITY),
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_MAGNET_BOMB),
LEVEL_UP_MOVE( 5, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(11, MOVE_MAGNET_BOMB),
LEVEL_UP_MOVE(12, MOVE_BLOCK),
LEVEL_UP_MOVE(18, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(21, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(27, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(28, MOVE_REST),
LEVEL_UP_MOVE(35, MOVE_POWER_GEM),
LEVEL_UP_MOVE(35, MOVE_SANDSTORM),
LEVEL_UP_MOVE(42, MOVE_DISCHARGE),
LEVEL_UP_MOVE(49, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(54, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(55, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(56, MOVE_LOCK_ON),
LEVEL_UP_END
};

static const struct LevelUpMove sDusknoirLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_GRAVITY),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 1, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 6, MOVE_DISABLE),
LEVEL_UP_MOVE(10, MOVE_FORESIGHT),
LEVEL_UP_MOVE(12, MOVE_ASTONISH),
LEVEL_UP_MOVE(16, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(17, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(20, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(24, MOVE_PURSUIT),
LEVEL_UP_MOVE(28, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(32, MOVE_CURSE),
LEVEL_UP_MOVE(36, MOVE_HEX),
LEVEL_UP_MOVE(37, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE(40, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(42, MOVE_PAYBACK),
LEVEL_UP_MOVE(43, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(54, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(56, MOVE_FUTURE_SIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sFroslassLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HEX),
LEVEL_UP_MOVE( 0, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE( 1, MOVE_HEX),
LEVEL_UP_MOVE( 1, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 4, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(12, MOVE_ASTONISH),
LEVEL_UP_MOVE(17, MOVE_ICY_WIND),
LEVEL_UP_MOVE(21, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(23, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(23, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(27, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(30, MOVE_FROST_BREATH),
LEVEL_UP_MOVE(30, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(34, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(42, MOVE_HAIL),
LEVEL_UP_MOVE(42, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(54, MOVE_AURORA_VEIL),
LEVEL_UP_MOVE(54, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(56, MOVE_BLIZZARD),
LEVEL_UP_MOVE(59, MOVE_DESTINY_BOND),
LEVEL_UP_END
};

static const struct LevelUpMove sRotomLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_TRICK),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(10, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(24, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(25, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(25, MOVE_UPROAR),
LEVEL_UP_MOVE(29, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(32, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(37, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(38, MOVE_CHARGE),
LEVEL_UP_MOVE(43, MOVE_HEX),
LEVEL_UP_MOVE(45, MOVE_TRICK),
LEVEL_UP_MOVE(56, MOVE_DISCHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sUxieLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_REST),
LEVEL_UP_MOVE( 1, MOVE_MEMENTO),
LEVEL_UP_MOVE( 1, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE(14, MOVE_IMPRISON),
LEVEL_UP_MOVE(15, MOVE_SWIFT),
LEVEL_UP_MOVE(15, MOVE_ENDURE),
LEVEL_UP_MOVE(21, MOVE_PSYBEAM),
LEVEL_UP_MOVE(21, MOVE_CONFUSION),
LEVEL_UP_MOVE(40, MOVE_YAWN),
LEVEL_UP_MOVE(44, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(44, MOVE_AMNESIA),
LEVEL_UP_MOVE(45, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(49, MOVE_PSYCHIC),
LEVEL_UP_MOVE(64, MOVE_FLAIL),
LEVEL_UP_MOVE(66, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(76, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sMespritLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_REST),
LEVEL_UP_MOVE( 1, MOVE_HEALING_WISH),
LEVEL_UP_MOVE( 1, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE(14, MOVE_IMPRISON),
LEVEL_UP_MOVE(15, MOVE_SWIFT),
LEVEL_UP_MOVE(15, MOVE_PROTECT),
LEVEL_UP_MOVE(21, MOVE_PSYBEAM),
LEVEL_UP_MOVE(21, MOVE_CONFUSION),
LEVEL_UP_MOVE(31, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(44, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(44, MOVE_CHARM),
LEVEL_UP_MOVE(45, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(49, MOVE_PSYCHIC),
LEVEL_UP_MOVE(56, MOVE_FLATTER),
LEVEL_UP_MOVE(64, MOVE_COPYCAT),
LEVEL_UP_MOVE(66, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(76, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sAzelfLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_REST),
LEVEL_UP_MOVE( 1, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE( 1, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(14, MOVE_IMPRISON),
LEVEL_UP_MOVE(15, MOVE_SWIFT),
LEVEL_UP_MOVE(15, MOVE_DETECT),
LEVEL_UP_MOVE(21, MOVE_PSYBEAM),
LEVEL_UP_MOVE(21, MOVE_CONFUSION),
LEVEL_UP_MOVE(40, MOVE_UPROAR),
LEVEL_UP_MOVE(44, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(44, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(45, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(49, MOVE_PSYCHIC),
LEVEL_UP_MOVE(64, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(66, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(76, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sDialgaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 7, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 8, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(14, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_SLASH),
LEVEL_UP_MOVE(32, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(35, MOVE_POWER_GEM),
LEVEL_UP_MOVE(42, MOVE_METAL_BURST),
LEVEL_UP_MOVE(48, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(50, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE(50, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(52, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(59, MOVE_IRON_TAIL),
LEVEL_UP_MOVE(60, MOVE_ROAR_OF_TIME),
LEVEL_UP_END
};

static const struct LevelUpMove sPalkiaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 7, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 8, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(14, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_SLASH),
LEVEL_UP_MOVE(30, MOVE_AQUA_RING),
LEVEL_UP_MOVE(32, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(35, MOVE_POWER_GEM),
LEVEL_UP_MOVE(48, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(50, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE(50, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(52, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(57, MOVE_SPACIAL_REND),
LEVEL_UP_MOVE(67, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sHeatranLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_MAGMA_STORM),
LEVEL_UP_MOVE( 1, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE( 1, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 1, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 6, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE(12, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(17, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(33, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(34, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(34, MOVE_CRUNCH),
LEVEL_UP_MOVE(46, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(52, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(57, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(65, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(73, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE(79, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(87, MOVE_MAGMA_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sRegigigasLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_CRUSH_GRIP),
LEVEL_UP_MOVE( 1, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE( 1, MOVE_FORESIGHT),
LEVEL_UP_MOVE( 1, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE(18, MOVE_STOMP),
LEVEL_UP_MOVE(19, MOVE_REVENGE),
LEVEL_UP_MOVE(24, MOVE_PROTECT),
LEVEL_UP_MOVE(25, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(30, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(36, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE(38, MOVE_PAYBACK),
LEVEL_UP_MOVE(42, MOVE_BODY_PRESS),
LEVEL_UP_MOVE(43, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(51, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(66, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(76, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(76, MOVE_CRUSH_GRIP),
LEVEL_UP_MOVE(89, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sGiratinaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 1, MOVE_DEFOG),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 7, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 7, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(13, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(19, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(29, MOVE_SLASH),
LEVEL_UP_MOVE(35, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(36, MOVE_HEX),
LEVEL_UP_MOVE(41, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(49, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE(49, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(50, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(51, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(51, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(53, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE(56, MOVE_SHADOW_FORCE),
LEVEL_UP_END
};

static const struct LevelUpMove sCresseliaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_LUNAR_DANCE),
LEVEL_UP_MOVE( 1, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE( 1, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE( 1, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(14, MOVE_MIST),
LEVEL_UP_MOVE(18, MOVE_PSYBEAM),
LEVEL_UP_MOVE(22, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(24, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(40, MOVE_SLASH),
LEVEL_UP_MOVE(48, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(51, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(54, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(56, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(77, MOVE_MOONBLAST),
LEVEL_UP_MOVE(78, MOVE_PSYCHIC),
LEVEL_UP_MOVE(79, MOVE_LUNAR_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sPhioneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 9, MOVE_CHARM),
LEVEL_UP_MOVE(16, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(24, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(31, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(39, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(46, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(54, MOVE_AQUA_RING),
LEVEL_UP_MOVE(61, MOVE_DIVE),
LEVEL_UP_MOVE(69, MOVE_RAIN_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sManaphyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TAIL_GLOW),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 9, MOVE_CHARM),
LEVEL_UP_MOVE(16, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(24, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(31, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(39, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(46, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(54, MOVE_AQUA_RING),
LEVEL_UP_MOVE(61, MOVE_DIVE),
LEVEL_UP_MOVE(69, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(76, MOVE_HEART_SWAP),
LEVEL_UP_END
};

static const struct LevelUpMove sDarkraiLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(11, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(20, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(29, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(29, MOVE_PURSUIT),
LEVEL_UP_MOVE(38, MOVE_NIGHTMARE),
LEVEL_UP_MOVE(47, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(57, MOVE_HAZE),
LEVEL_UP_MOVE(66, MOVE_DARK_VOID),
LEVEL_UP_MOVE(75, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(75, MOVE_EMBARGO),
LEVEL_UP_MOVE(84, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(93, MOVE_DARK_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sShayminLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(10, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(19, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(28, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(37, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(46, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(55, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(64, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(73, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(82, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(82, MOVE_GRASS_WHISTLE),
LEVEL_UP_MOVE(91, MOVE_HEALING_WISH),
LEVEL_UP_MOVE(91, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(100, MOVE_SEED_FLARE),
LEVEL_UP_END
};

static const struct LevelUpMove sArceusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SEISMIC_TOSS),
LEVEL_UP_MOVE( 1, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE( 1, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE( 1, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(10, MOVE_GRAVITY),
LEVEL_UP_MOVE(20, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(30, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(40, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE(50, MOVE_REFRESH),
LEVEL_UP_MOVE(60, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(70, MOVE_RECOVER),
LEVEL_UP_MOVE(80, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(90, MOVE_PERISH_SONG),
LEVEL_UP_MOVE(100, MOVE_JUDGMENT),
LEVEL_UP_END
};

static const struct LevelUpMove sVictiniLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_V_CREATE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_SEARING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_INCINERATE),
LEVEL_UP_MOVE( 7, MOVE_WORK_UP),
LEVEL_UP_MOVE(14, MOVE_INCINERATE),
LEVEL_UP_MOVE(20, MOVE_ENDURE),
LEVEL_UP_MOVE(21, MOVE_HEADBUTT),
LEVEL_UP_MOVE(25, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(41, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(43, MOVE_REVERSAL),
LEVEL_UP_MOVE(45, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(53, MOVE_INFERNO),
LEVEL_UP_MOVE(58, MOVE_STORED_POWER),
LEVEL_UP_MOVE(63, MOVE_SEARING_SHOT),
LEVEL_UP_MOVE(67, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(74, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(85, MOVE_FINAL_GAMBIT),
LEVEL_UP_MOVE(91, MOVE_OVERHEAT),
LEVEL_UP_END
};

static const struct LevelUpMove sSnivyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_VINE_WHIP),
LEVEL_UP_MOVE(10, MOVE_WRAP),
LEVEL_UP_MOVE(13, MOVE_GROWTH),
LEVEL_UP_MOVE(16, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE(19, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(22, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(25, MOVE_SLAM),
LEVEL_UP_MOVE(28, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(31, MOVE_COIL),
LEVEL_UP_MOVE(34, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(37, MOVE_WRING_OUT),
LEVEL_UP_MOVE(40, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(43, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sServineLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_VINE_WHIP),
LEVEL_UP_MOVE(10, MOVE_WRAP),
LEVEL_UP_MOVE(13, MOVE_GROWTH),
LEVEL_UP_MOVE(16, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE(20, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(24, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(28, MOVE_SLAM),
LEVEL_UP_MOVE(32, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(36, MOVE_COIL),
LEVEL_UP_MOVE(40, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(44, MOVE_WRING_OUT),
LEVEL_UP_MOVE(48, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(52, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sSerperiorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_VINE_WHIP),
LEVEL_UP_MOVE(10, MOVE_WRAP),
LEVEL_UP_MOVE(13, MOVE_GROWTH),
LEVEL_UP_MOVE(16, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE(20, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(24, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(28, MOVE_SLAM),
LEVEL_UP_MOVE(32, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(38, MOVE_COIL),
LEVEL_UP_MOVE(44, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(50, MOVE_WRING_OUT),
LEVEL_UP_MOVE(56, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(62, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sTepigLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(13, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(15, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(19, MOVE_SMOG),
LEVEL_UP_MOVE(21, MOVE_ROLLOUT),
LEVEL_UP_MOVE(25, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_HEAT_CRASH),
LEVEL_UP_MOVE(31, MOVE_ASSURANCE),
LEVEL_UP_MOVE(33, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(37, MOVE_HEAD_SMASH),
LEVEL_UP_MOVE(39, MOVE_ROAR),
LEVEL_UP_MOVE(43, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sPigniteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ARM_THRUST),
LEVEL_UP_MOVE( 1, MOVE_ARM_THRUST),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(13, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(15, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(17, MOVE_ARM_THRUST),
LEVEL_UP_MOVE(20, MOVE_SMOG),
LEVEL_UP_MOVE(23, MOVE_ROLLOUT),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(31, MOVE_HEAT_CRASH),
LEVEL_UP_MOVE(36, MOVE_ASSURANCE),
LEVEL_UP_MOVE(39, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(44, MOVE_HEAD_SMASH),
LEVEL_UP_MOVE(47, MOVE_ROAR),
LEVEL_UP_MOVE(52, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sEmboarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ARM_THRUST),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_EMBER),
LEVEL_UP_MOVE( 9, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(13, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(15, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(17, MOVE_ARM_THRUST),
LEVEL_UP_MOVE(20, MOVE_SMOG),
LEVEL_UP_MOVE(23, MOVE_ROLLOUT),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(31, MOVE_HEAT_CRASH),
LEVEL_UP_MOVE(38, MOVE_ASSURANCE),
LEVEL_UP_MOVE(43, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(50, MOVE_HEAD_SMASH),
LEVEL_UP_MOVE(55, MOVE_ROAR),
LEVEL_UP_MOVE(62, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sOshawottLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_WATER_GUN),
LEVEL_UP_MOVE(11, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(13, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(17, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(19, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(23, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(25, MOVE_REVENGE),
LEVEL_UP_MOVE(29, MOVE_AQUA_JET),
LEVEL_UP_MOVE(31, MOVE_ENCORE),
LEVEL_UP_MOVE(35, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(37, MOVE_RETALIATE),
LEVEL_UP_MOVE(41, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(43, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sDewottLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_WATER_GUN),
LEVEL_UP_MOVE(11, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(13, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(17, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(20, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(25, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(28, MOVE_REVENGE),
LEVEL_UP_MOVE(33, MOVE_AQUA_JET),
LEVEL_UP_MOVE(36, MOVE_ENCORE),
LEVEL_UP_MOVE(41, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(44, MOVE_RETALIATE),
LEVEL_UP_MOVE(49, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(52, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sSamurottLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_WATER_GUN),
LEVEL_UP_MOVE(11, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(13, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(17, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(20, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(25, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(28, MOVE_REVENGE),
LEVEL_UP_MOVE(33, MOVE_AQUA_JET),
LEVEL_UP_MOVE(36, MOVE_SLASH),
LEVEL_UP_MOVE(38, MOVE_ENCORE),
LEVEL_UP_MOVE(45, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(50, MOVE_RETALIATE),
LEVEL_UP_MOVE(57, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(62, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sPatratLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_LEER),
LEVEL_UP_MOVE( 6, MOVE_BITE),
LEVEL_UP_MOVE( 8, MOVE_BIDE),
LEVEL_UP_MOVE(11, MOVE_DETECT),
LEVEL_UP_MOVE(13, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(16, MOVE_CRUNCH),
LEVEL_UP_MOVE(18, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(21, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(23, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(26, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(26, MOVE_WORK_UP),
LEVEL_UP_MOVE(28, MOVE_HYPER_FANG),
LEVEL_UP_MOVE(32, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(33, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(34, MOVE_BATON_PASS),
LEVEL_UP_MOVE(37, MOVE_SLAM),
LEVEL_UP_END
};

static const struct LevelUpMove sWatchogLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_ROTOTILLER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 3, MOVE_LEER),
LEVEL_UP_MOVE( 6, MOVE_BITE),
LEVEL_UP_MOVE( 8, MOVE_BIDE),
LEVEL_UP_MOVE(11, MOVE_DETECT),
LEVEL_UP_MOVE(13, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(16, MOVE_CRUNCH),
LEVEL_UP_MOVE(18, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(20, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(22, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(25, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(29, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(29, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(32, MOVE_HYPER_FANG),
LEVEL_UP_MOVE(37, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(39, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(40, MOVE_BATON_PASS),
LEVEL_UP_MOVE(44, MOVE_SLAM),
LEVEL_UP_END
};

static const struct LevelUpMove sLillipupLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE(12, MOVE_WORK_UP),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(20, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(21, MOVE_RETALIATE),
LEVEL_UP_MOVE(21, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(22, MOVE_CRUNCH),
LEVEL_UP_MOVE(31, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(32, MOVE_ROAR),
LEVEL_UP_MOVE(34, MOVE_REVERSAL),
LEVEL_UP_MOVE(39, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(43, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sHerdierLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WORK_UP),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 5, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE(19, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(20, MOVE_WORK_UP),
LEVEL_UP_MOVE(23, MOVE_RETALIATE),
LEVEL_UP_MOVE(24, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(25, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(26, MOVE_CRUNCH),
LEVEL_UP_MOVE(36, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(40, MOVE_ROAR),
LEVEL_UP_MOVE(42, MOVE_REVERSAL),
LEVEL_UP_MOVE(50, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(55, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sStoutlandLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WORK_UP),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 5, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE(19, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(20, MOVE_WORK_UP),
LEVEL_UP_MOVE(25, MOVE_RETALIATE),
LEVEL_UP_MOVE(25, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(26, MOVE_CRUNCH),
LEVEL_UP_MOVE(27, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(41, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(43, MOVE_ROAR),
LEVEL_UP_MOVE(47, MOVE_REVERSAL),
LEVEL_UP_MOVE(59, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(67, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sPurrloinLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_ASSIST),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(13, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(15, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_TORMENT),
LEVEL_UP_MOVE(24, MOVE_ASSURANCE),
LEVEL_UP_MOVE(24, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(33, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(36, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(37, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(37, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(39, MOVE_SNATCH),
LEVEL_UP_MOVE(43, MOVE_PLAY_ROUGH),
LEVEL_UP_END
};

static const struct LevelUpMove sLiepardLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_ASSIST),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_ASSIST),
LEVEL_UP_MOVE(10, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(15, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_TORMENT),
LEVEL_UP_MOVE(22, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(26, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(27, MOVE_ASSURANCE),
LEVEL_UP_MOVE(34, MOVE_SLASH),
LEVEL_UP_MOVE(38, MOVE_TAUNT),
LEVEL_UP_MOVE(44, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(45, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(45, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(47, MOVE_SNATCH),
LEVEL_UP_MOVE(54, MOVE_PLAY_ROUGH),
LEVEL_UP_END
};

static const struct LevelUpMove sPansageLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_LICK),
LEVEL_UP_MOVE(10, MOVE_VINE_WHIP),
LEVEL_UP_MOVE(13, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(16, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(19, MOVE_BITE),
LEVEL_UP_MOVE(22, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(25, MOVE_TORMENT),
LEVEL_UP_MOVE(28, MOVE_FLING),
LEVEL_UP_MOVE(31, MOVE_ACROBATICS),
LEVEL_UP_MOVE(34, MOVE_GRASS_KNOT),
LEVEL_UP_MOVE(37, MOVE_RECYCLE),
LEVEL_UP_MOVE(40, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(43, MOVE_CRUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sSimisageLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 1, MOVE_SEED_BOMB),
LEVEL_UP_END
};

static const struct LevelUpMove sPansearLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_LICK),
LEVEL_UP_MOVE(10, MOVE_INCINERATE),
LEVEL_UP_MOVE(13, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(16, MOVE_YAWN),
LEVEL_UP_MOVE(19, MOVE_BITE),
LEVEL_UP_MOVE(22, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(25, MOVE_AMNESIA),
LEVEL_UP_MOVE(28, MOVE_FLING),
LEVEL_UP_MOVE(31, MOVE_ACROBATICS),
LEVEL_UP_MOVE(34, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(37, MOVE_RECYCLE),
LEVEL_UP_MOVE(40, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(43, MOVE_CRUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sSimisearLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 1, MOVE_FLAME_BURST),
LEVEL_UP_END
};

static const struct LevelUpMove sPanpourLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_LICK),
LEVEL_UP_MOVE(10, MOVE_WATER_GUN),
LEVEL_UP_MOVE(13, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(16, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(19, MOVE_BITE),
LEVEL_UP_MOVE(22, MOVE_SCALD),
LEVEL_UP_MOVE(25, MOVE_TAUNT),
LEVEL_UP_MOVE(28, MOVE_FLING),
LEVEL_UP_MOVE(31, MOVE_ACROBATICS),
LEVEL_UP_MOVE(34, MOVE_BRINE),
LEVEL_UP_MOVE(37, MOVE_RECYCLE),
LEVEL_UP_MOVE(40, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(43, MOVE_CRUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sSimipourLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 1, MOVE_SCALD),
LEVEL_UP_END
};

static const struct LevelUpMove sMunnaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 5, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE( 9, MOVE_PSYBEAM),
LEVEL_UP_MOVE(12, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(12, MOVE_IMPRISON),
LEVEL_UP_MOVE(16, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(18, MOVE_YAWN),
LEVEL_UP_MOVE(20, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(23, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(25, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(29, MOVE_NIGHTMARE),
LEVEL_UP_MOVE(31, MOVE_CALM_MIND),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(38, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(40, MOVE_MOONBLAST),
LEVEL_UP_MOVE(42, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(43, MOVE_TELEKINESIS),
LEVEL_UP_MOVE(47, MOVE_STORED_POWER),
LEVEL_UP_MOVE(52, MOVE_WONDER_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sMusharnaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PSYCHIC_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 1, MOVE_MOONLIGHT),
LEVEL_UP_MOVE( 1, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE( 1, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_DREAM_EATER),
LEVEL_UP_MOVE( 1, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE( 1, MOVE_WONDER_ROOM),
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 1, MOVE_LUCKY_CHANT),
LEVEL_UP_END
};

static const struct LevelUpMove sPidoveLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_LEER),
LEVEL_UP_MOVE( 9, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(15, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(19, MOVE_TAUNT),
LEVEL_UP_MOVE(24, MOVE_DETECT),
LEVEL_UP_MOVE(26, MOVE_ROOST),
LEVEL_UP_MOVE(30, MOVE_SWAGGER),
LEVEL_UP_MOVE(30, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(30, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(32, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(43, MOVE_TAILWIND),
LEVEL_UP_MOVE(43, MOVE_FACADE),
LEVEL_UP_MOVE(47, MOVE_SKY_ATTACK),
LEVEL_UP_END
};

static const struct LevelUpMove sTranquillLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_LEER),
LEVEL_UP_MOVE(11, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(15, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(20, MOVE_TAUNT),
LEVEL_UP_MOVE(27, MOVE_DETECT),
LEVEL_UP_MOVE(29, MOVE_ROOST),
LEVEL_UP_MOVE(33, MOVE_SWAGGER),
LEVEL_UP_MOVE(34, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(34, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(36, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(50, MOVE_FACADE),
LEVEL_UP_MOVE(52, MOVE_TAILWIND),
LEVEL_UP_MOVE(57, MOVE_SKY_ATTACK),
LEVEL_UP_END
};

static const struct LevelUpMove sUnfezantLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_LEER),
LEVEL_UP_MOVE(11, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(15, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(20, MOVE_TAUNT),
LEVEL_UP_MOVE(28, MOVE_DETECT),
LEVEL_UP_MOVE(32, MOVE_ROOST),
LEVEL_UP_MOVE(35, MOVE_SWAGGER),
LEVEL_UP_MOVE(35, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(37, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(38, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(55, MOVE_FACADE),
LEVEL_UP_MOVE(59, MOVE_TAILWIND),
LEVEL_UP_MOVE(66, MOVE_SKY_ATTACK),
LEVEL_UP_END
};

static const struct LevelUpMove sBlitzleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 8, MOVE_CHARGE),
LEVEL_UP_MOVE(11, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(15, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(18, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(22, MOVE_PURSUIT),
LEVEL_UP_MOVE(25, MOVE_SPARK),
LEVEL_UP_MOVE(29, MOVE_STOMP),
LEVEL_UP_MOVE(32, MOVE_DISCHARGE),
LEVEL_UP_MOVE(36, MOVE_AGILITY),
LEVEL_UP_MOVE(39, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(43, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sZebstrikaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ION_DELUGE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 8, MOVE_CHARGE),
LEVEL_UP_MOVE(11, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(15, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(18, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(22, MOVE_PURSUIT),
LEVEL_UP_MOVE(25, MOVE_SPARK),
LEVEL_UP_MOVE(31, MOVE_STOMP),
LEVEL_UP_MOVE(36, MOVE_DISCHARGE),
LEVEL_UP_MOVE(42, MOVE_AGILITY),
LEVEL_UP_MOVE(47, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(53, MOVE_THRASH),
LEVEL_UP_MOVE(58, MOVE_ION_DELUGE),
LEVEL_UP_END
};

static const struct LevelUpMove sRoggenrolaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(14, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(16, MOVE_HEADBUTT),
LEVEL_UP_MOVE(19, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(20, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(20, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(22, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(27, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(34, MOVE_SANDSTORM),
LEVEL_UP_MOVE(37, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(41, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sBoldoreLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(14, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(16, MOVE_HEADBUTT),
LEVEL_UP_MOVE(19, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(20, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(23, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(25, MOVE_POWER_GEM),
LEVEL_UP_MOVE(30, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(36, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(42, MOVE_SANDSTORM),
LEVEL_UP_MOVE(48, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(54, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sGigalithLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(14, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(16, MOVE_HEADBUTT),
LEVEL_UP_MOVE(19, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(20, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(23, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(25, MOVE_POWER_GEM),
LEVEL_UP_MOVE(30, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(36, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(42, MOVE_SANDSTORM),
LEVEL_UP_MOVE(48, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(54, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sWoobatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_ATTRACT),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 4, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 5, MOVE_CONFUSION),
LEVEL_UP_MOVE( 8, MOVE_GUST),
LEVEL_UP_MOVE(15, MOVE_HEART_STAMP),
LEVEL_UP_MOVE(17, MOVE_ASSURANCE),
LEVEL_UP_MOVE(18, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(19, MOVE_IMPRISON),
LEVEL_UP_MOVE(25, MOVE_ATTRACT),
LEVEL_UP_MOVE(29, MOVE_AMNESIA),
LEVEL_UP_MOVE(30, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(33, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(36, MOVE_CALM_MIND),
LEVEL_UP_MOVE(40, MOVE_PSYCHIC),
LEVEL_UP_MOVE(42, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(55, MOVE_SIMPLE_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sSwoobatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_ATTRACT),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_ENDEAVOR),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 1, MOVE_ASSURANCE),
LEVEL_UP_MOVE( 4, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 8, MOVE_GUST),
LEVEL_UP_MOVE(15, MOVE_HEART_STAMP),
LEVEL_UP_MOVE(17, MOVE_ASSURANCE),
LEVEL_UP_MOVE(18, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(19, MOVE_IMPRISON),
LEVEL_UP_MOVE(25, MOVE_ATTRACT),
LEVEL_UP_MOVE(29, MOVE_AMNESIA),
LEVEL_UP_MOVE(33, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(36, MOVE_CALM_MIND),
LEVEL_UP_MOVE(40, MOVE_PSYCHIC),
LEVEL_UP_MOVE(42, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(47, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(55, MOVE_SIMPLE_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sDrilburLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 4, MOVE_SCRATCH),
LEVEL_UP_MOVE( 5, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 8, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(12, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(15, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(15, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(24, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(24, MOVE_DIG),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(28, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(30, MOVE_SANDSTORM),
LEVEL_UP_MOVE(36, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(37, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(41, MOVE_DRILL_RUN),
LEVEL_UP_MOVE(47, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sExcadrillLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HORN_DRILL),
LEVEL_UP_MOVE( 1, MOVE_HORN_DRILL),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_ROTOTILLER),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 5, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 8, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(12, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(15, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(22, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(24, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(25, MOVE_DIG),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(28, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(31, MOVE_HORN_DRILL),
LEVEL_UP_MOVE(35, MOVE_SANDSTORM),
LEVEL_UP_MOVE(41, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(43, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(50, MOVE_DRILL_RUN),
LEVEL_UP_MOVE(60, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sAudinoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_LAST_RESORT),
LEVEL_UP_MOVE( 1, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE( 1, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 6, MOVE_REFRESH),
LEVEL_UP_MOVE( 7, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 7, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(12, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(16, MOVE_GROWL),
LEVEL_UP_MOVE(17, MOVE_ATTRACT),
LEVEL_UP_MOVE(20, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(22, MOVE_SECRET_POWER),
LEVEL_UP_MOVE(24, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(31, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(34, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(38, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(39, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(40, MOVE_SIMPLE_BEAM),
LEVEL_UP_MOVE(42, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(48, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(56, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(57, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sTimburrLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 8, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 8, MOVE_BIDE),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(20, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(22, MOVE_BULK_UP),
LEVEL_UP_MOVE(24, MOVE_SLAM),
LEVEL_UP_MOVE(24, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(26, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(32, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(33, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(38, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(41, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(46, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(46, MOVE_FOCUS_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sGurdurrLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 7, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 8, MOVE_BIDE),
LEVEL_UP_MOVE(12, MOVE_LOW_KICK),
LEVEL_UP_MOVE(16, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(20, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(23, MOVE_BULK_UP),
LEVEL_UP_MOVE(24, MOVE_SLAM),
LEVEL_UP_MOVE(24, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(27, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(36, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(36, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(43, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(48, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(55, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(56, MOVE_FOCUS_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sConkeldurrLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 7, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 8, MOVE_BIDE),
LEVEL_UP_MOVE(12, MOVE_LOW_KICK),
LEVEL_UP_MOVE(16, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(20, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(23, MOVE_BULK_UP),
LEVEL_UP_MOVE(24, MOVE_SLAM),
LEVEL_UP_MOVE(24, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(27, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(36, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(36, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(43, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(48, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(55, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(56, MOVE_FOCUS_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sTympoleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 4, MOVE_ACID),
LEVEL_UP_MOVE( 6, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(12, MOVE_ROUND),
LEVEL_UP_MOVE(14, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(15, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(25, MOVE_UPROAR),
LEVEL_UP_MOVE(25, MOVE_AQUA_RING),
LEVEL_UP_MOVE(29, MOVE_FLAIL),
LEVEL_UP_MOVE(32, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(36, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(38, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(40, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(44, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sPalpitoadLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_ROUND),
LEVEL_UP_MOVE( 5, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(12, MOVE_ROUND),
LEVEL_UP_MOVE(14, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(15, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(26, MOVE_UPROAR),
LEVEL_UP_MOVE(27, MOVE_AQUA_RING),
LEVEL_UP_MOVE(31, MOVE_FLAIL),
LEVEL_UP_MOVE(37, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(42, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(42, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(46, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(52, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sSeismitoadLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_ROUND),
LEVEL_UP_MOVE( 5, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(12, MOVE_ROUND),
LEVEL_UP_MOVE(14, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(15, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(26, MOVE_UPROAR),
LEVEL_UP_MOVE(28, MOVE_AQUA_RING),
LEVEL_UP_MOVE(32, MOVE_FLAIL),
LEVEL_UP_MOVE(36, MOVE_ACID),
LEVEL_UP_MOVE(39, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(44, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE(46, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(49, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(53, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(60, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sThrohLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_MAT_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 5, MOVE_BIDE),
LEVEL_UP_MOVE( 6, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(19, MOVE_REVENGE),
LEVEL_UP_MOVE(23, MOVE_CIRCLE_THROW),
LEVEL_UP_MOVE(24, MOVE_VITAL_THROW),
LEVEL_UP_MOVE(24, MOVE_SEISMIC_TOSS),
LEVEL_UP_MOVE(26, MOVE_STORM_THROW),
LEVEL_UP_MOVE(27, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(28, MOVE_BULK_UP),
LEVEL_UP_MOVE(30, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(41, MOVE_ENDURE),
LEVEL_UP_MOVE(49, MOVE_REVERSAL),
LEVEL_UP_MOVE(50, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sSawkLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 5, MOVE_BIDE),
LEVEL_UP_MOVE( 6, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(10, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(17, MOVE_LOW_SWEEP),
LEVEL_UP_MOVE(23, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE(28, MOVE_BULK_UP),
LEVEL_UP_MOVE(28, MOVE_COUNTER),
LEVEL_UP_MOVE(30, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(30, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(32, MOVE_RETALIATE),
LEVEL_UP_MOVE(41, MOVE_ENDURE),
LEVEL_UP_MOVE(49, MOVE_REVERSAL),
LEVEL_UP_MOVE(50, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sSewaddleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 8, MOVE_BUG_BITE),
LEVEL_UP_MOVE(15, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(22, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(29, MOVE_ENDURE),
LEVEL_UP_MOVE(31, MOVE_STICKY_WEB),
LEVEL_UP_MOVE(36, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(43, MOVE_FLAIL),
LEVEL_UP_END
};

static const struct LevelUpMove sSwadloonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_GRASS_WHISTLE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(20, MOVE_PROTECT),
LEVEL_UP_END
};

static const struct LevelUpMove sLeavannyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 8, MOVE_BUG_BITE),
LEVEL_UP_MOVE(15, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(22, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(29, MOVE_SLASH),
LEVEL_UP_MOVE(32, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(32, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(36, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(39, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(43, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(46, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(50, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sVenipedeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 4, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 5, MOVE_POISON_STING),
LEVEL_UP_MOVE(11, MOVE_PROTECT),
LEVEL_UP_MOVE(11, MOVE_SCREECH),
LEVEL_UP_MOVE(12, MOVE_PURSUIT),
LEVEL_UP_MOVE(15, MOVE_POISON_TAIL),
LEVEL_UP_MOVE(21, MOVE_BUG_BITE),
LEVEL_UP_MOVE(27, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(30, MOVE_AGILITY),
LEVEL_UP_MOVE(33, MOVE_STEAMROLLER),
LEVEL_UP_MOVE(36, MOVE_TOXIC),
LEVEL_UP_MOVE(39, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(40, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sWhirlipedeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 5, MOVE_POISON_STING),
LEVEL_UP_MOVE(11, MOVE_SCREECH),
LEVEL_UP_MOVE(12, MOVE_PURSUIT),
LEVEL_UP_MOVE(15, MOVE_POISON_TAIL),
LEVEL_UP_MOVE(15, MOVE_PROTECT),
LEVEL_UP_MOVE(21, MOVE_BUG_BITE),
LEVEL_UP_MOVE(22, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(27, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(32, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(37, MOVE_STEAMROLLER),
LEVEL_UP_MOVE(42, MOVE_TOXIC),
LEVEL_UP_MOVE(46, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(46, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE(52, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sScolipedeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 5, MOVE_POISON_STING),
LEVEL_UP_MOVE(11, MOVE_SCREECH),
LEVEL_UP_MOVE(12, MOVE_PURSUIT),
LEVEL_UP_MOVE(15, MOVE_POISON_TAIL),
LEVEL_UP_MOVE(15, MOVE_PROTECT),
LEVEL_UP_MOVE(21, MOVE_BUG_BITE),
LEVEL_UP_MOVE(27, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(30, MOVE_BATON_PASS),
LEVEL_UP_MOVE(34, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(37, MOVE_AGILITY),
LEVEL_UP_MOVE(39, MOVE_STEAMROLLER),
LEVEL_UP_MOVE(46, MOVE_TOXIC),
LEVEL_UP_MOVE(50, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE(53, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(59, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(70, MOVE_MEGAHORN),
LEVEL_UP_END
};

static const struct LevelUpMove sCottoneeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 3, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 8, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(10, MOVE_GROWTH),
LEVEL_UP_MOVE(12, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(17, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(17, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(21, MOVE_POISON_POWDER),
LEVEL_UP_MOVE(24, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(25, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(27, MOVE_CHARM),
LEVEL_UP_MOVE(31, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(35, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(39, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(40, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(43, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(46, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sWhimsicottLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_TAILWIND),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_MEMENTO),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_POISON_POWDER),
LEVEL_UP_MOVE( 1, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 1, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE( 1, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 1, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE( 1, MOVE_ENDEAVOR),
LEVEL_UP_MOVE( 1, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE( 1, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(10, MOVE_GUST),
LEVEL_UP_MOVE(28, MOVE_TAILWIND),
LEVEL_UP_MOVE(46, MOVE_HURRICANE),
LEVEL_UP_MOVE(50, MOVE_MOONBLAST),
LEVEL_UP_END
};

static const struct LevelUpMove sPetililLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 4, MOVE_GROWTH),
LEVEL_UP_MOVE(11, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(13, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(14, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(15, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(17, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(18, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(20, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(23, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(24, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(32, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(36, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(37, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(38, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(44, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sLilligantLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 1, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE( 1, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 1, MOVE_AFTER_YOU),
LEVEL_UP_MOVE( 1, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 1, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 1, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE( 1, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE( 1, MOVE_LEAF_STORM),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(10, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE(28, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE(46, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(50, MOVE_PETAL_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sBasculinLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 3, MOVE_UPROAR),
LEVEL_UP_MOVE( 4, MOVE_TACKLE),
LEVEL_UP_MOVE(12, MOVE_AQUA_JET),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(14, MOVE_HEADBUTT),
LEVEL_UP_MOVE(14, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(26, MOVE_CRUNCH),
LEVEL_UP_MOVE(26, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_FLAIL),
LEVEL_UP_MOVE(29, MOVE_SOAK),
LEVEL_UP_MOVE(30, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(34, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(41, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(44, MOVE_FINAL_GAMBIT),
LEVEL_UP_MOVE(50, MOVE_THRASH),
LEVEL_UP_MOVE(53, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sSandileLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWER_TRIP),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 5, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE(11, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(13, MOVE_TORMENT),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(19, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(22, MOVE_EMBARGO),
LEVEL_UP_MOVE(24, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(24, MOVE_SWAGGER),
LEVEL_UP_MOVE(26, MOVE_DIG),
LEVEL_UP_MOVE(27, MOVE_CRUNCH),
LEVEL_UP_MOVE(35, MOVE_SANDSTORM),
LEVEL_UP_MOVE(35, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(39, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(42, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sKrokorokLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWER_TRIP),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE(11, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(13, MOVE_TORMENT),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(19, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(22, MOVE_EMBARGO),
LEVEL_UP_MOVE(24, MOVE_SWAGGER),
LEVEL_UP_MOVE(25, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(27, MOVE_DIG),
LEVEL_UP_MOVE(27, MOVE_CRUNCH),
LEVEL_UP_MOVE(37, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(38, MOVE_SANDSTORM),
LEVEL_UP_MOVE(45, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(49, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sKrookodileLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWER_TRIP),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE(11, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(13, MOVE_TORMENT),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(19, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(22, MOVE_EMBARGO),
LEVEL_UP_MOVE(24, MOVE_SWAGGER),
LEVEL_UP_MOVE(25, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(27, MOVE_DIG),
LEVEL_UP_MOVE(27, MOVE_CRUNCH),
LEVEL_UP_MOVE(38, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(40, MOVE_SANDSTORM),
LEVEL_UP_MOVE(49, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(51, MOVE_THRASH),
LEVEL_UP_MOVE(59, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sDarumakaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE( 8, MOVE_INCINERATE),
LEVEL_UP_MOVE( 9, MOVE_RAGE),
LEVEL_UP_MOVE(15, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(18, MOVE_HEADBUTT),
LEVEL_UP_MOVE(19, MOVE_FACADE),
LEVEL_UP_MOVE(20, MOVE_TAUNT),
LEVEL_UP_MOVE(20, MOVE_WORK_UP),
LEVEL_UP_MOVE(23, MOVE_UPROAR),
LEVEL_UP_MOVE(24, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE(32, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(34, MOVE_THRASH),
LEVEL_UP_MOVE(36, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(42, MOVE_OVERHEAT),
LEVEL_UP_MOVE(43, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sDarmanitanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_INCINERATE),
LEVEL_UP_MOVE( 1, MOVE_RAGE),
LEVEL_UP_MOVE( 3, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 8, MOVE_INCINERATE),
LEVEL_UP_MOVE( 9, MOVE_RAGE),
LEVEL_UP_MOVE(15, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(17, MOVE_SWAGGER),
LEVEL_UP_MOVE(18, MOVE_HEADBUTT),
LEVEL_UP_MOVE(19, MOVE_FACADE),
LEVEL_UP_MOVE(20, MOVE_WORK_UP),
LEVEL_UP_MOVE(24, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE(32, MOVE_UPROAR),
LEVEL_UP_MOVE(33, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(35, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(37, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(37, MOVE_THRASH),
LEVEL_UP_MOVE(39, MOVE_TAUNT),
LEVEL_UP_MOVE(51, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(54, MOVE_OVERHEAT),
LEVEL_UP_END
};

static const struct LevelUpMove sMaractusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPIKY_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_AFTER_YOU),
LEVEL_UP_MOVE( 1, MOVE_INGRAIN),
LEVEL_UP_MOVE( 1, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE( 5, MOVE_GROWTH),
LEVEL_UP_MOVE(10, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(12, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(14, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(14, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(22, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(22, MOVE_NEEDLE_ARM),
LEVEL_UP_MOVE(25, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(27, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(30, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(33, MOVE_INGRAIN),
LEVEL_UP_MOVE(39, MOVE_ACUPRESSURE),
LEVEL_UP_MOVE(41, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(44, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(46, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(49, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(57, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(57, MOVE_AFTER_YOU),
LEVEL_UP_END
};

static const struct LevelUpMove sDwebbleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_WITHDRAW),
LEVEL_UP_MOVE(11, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(13, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(17, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(18, MOVE_BUG_BITE),
LEVEL_UP_MOVE(25, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(26, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(28, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(29, MOVE_FLAIL),
LEVEL_UP_MOVE(35, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(40, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(45, MOVE_ROCK_WRECKER),
LEVEL_UP_END
};

static const struct LevelUpMove sCrustleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE( 1, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE( 1, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE( 7, MOVE_WITHDRAW),
LEVEL_UP_MOVE(11, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(13, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(17, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(17, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(18, MOVE_BUG_BITE),
LEVEL_UP_MOVE(25, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(26, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(30, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(34, MOVE_FLAIL),
LEVEL_UP_MOVE(38, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(46, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(55, MOVE_ROCK_WRECKER),
LEVEL_UP_END
};

static const struct LevelUpMove sScraggyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 8, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 9, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(14, MOVE_PAYBACK),
LEVEL_UP_MOVE(16, MOVE_LOW_KICK),
LEVEL_UP_MOVE(20, MOVE_PROTECT),
LEVEL_UP_MOVE(24, MOVE_BEAT_UP),
LEVEL_UP_MOVE(24, MOVE_SWAGGER),
LEVEL_UP_MOVE(25, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(27, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(30, MOVE_FACADE),
LEVEL_UP_MOVE(31, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(36, MOVE_HI_JUMP_KICK),
LEVEL_UP_MOVE(38, MOVE_CRUNCH),
LEVEL_UP_MOVE(45, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE(48, MOVE_FOCUS_PUNCH),
LEVEL_UP_MOVE(51, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sScraftyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_PAYBACK),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(12, MOVE_HEADBUTT),
LEVEL_UP_MOVE(16, MOVE_LOW_KICK),
LEVEL_UP_MOVE(20, MOVE_PROTECT),
LEVEL_UP_MOVE(22, MOVE_PAYBACK),
LEVEL_UP_MOVE(24, MOVE_BEAT_UP),
LEVEL_UP_MOVE(24, MOVE_SWAGGER),
LEVEL_UP_MOVE(25, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(27, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(31, MOVE_FACADE),
LEVEL_UP_MOVE(31, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(38, MOVE_HI_JUMP_KICK),
LEVEL_UP_MOVE(39, MOVE_CRUNCH),
LEVEL_UP_MOVE(51, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE(56, MOVE_FOCUS_PUNCH),
LEVEL_UP_MOVE(62, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sSigilyphLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE( 6, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 8, MOVE_PSYWAVE),
LEVEL_UP_MOVE(18, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(18, MOVE_PSYBEAM),
LEVEL_UP_MOVE(18, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(23, MOVE_GRAVITY),
LEVEL_UP_MOVE(26, MOVE_TAILWIND),
LEVEL_UP_MOVE(31, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(34, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(35, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(37, MOVE_REFLECT),
LEVEL_UP_MOVE(38, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(39, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(42, MOVE_PSYCHIC),
LEVEL_UP_MOVE(52, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE(60, MOVE_SKILL_SWAP),
LEVEL_UP_END
};

static const struct LevelUpMove sYamaskLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 6, MOVE_HAZE),
LEVEL_UP_MOVE( 8, MOVE_DISABLE),
LEVEL_UP_MOVE(10, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(18, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(20, MOVE_CRAFTY_SHIELD),
LEVEL_UP_MOVE(20, MOVE_HEX),
LEVEL_UP_MOVE(25, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(32, MOVE_CURSE),
LEVEL_UP_MOVE(36, MOVE_GRUDGE),
LEVEL_UP_MOVE(37, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(38, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(39, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(39, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(44, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(50, MOVE_DESTINY_BOND),
LEVEL_UP_END
};

static const struct LevelUpMove sCofagrigusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 0, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 8, MOVE_DISABLE),
LEVEL_UP_MOVE( 9, MOVE_HAZE),
LEVEL_UP_MOVE(13, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(18, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(20, MOVE_CRAFTY_SHIELD),
LEVEL_UP_MOVE(20, MOVE_HEX),
LEVEL_UP_MOVE(25, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(33, MOVE_CURSE),
LEVEL_UP_MOVE(34, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(39, MOVE_GRUDGE),
LEVEL_UP_MOVE(40, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(41, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(43, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(43, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(50, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(59, MOVE_DESTINY_BOND),
LEVEL_UP_END
};

static const struct LevelUpMove sTirtougaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 5, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 7, MOVE_PROTECT),
LEVEL_UP_MOVE(10, MOVE_AQUA_JET),
LEVEL_UP_MOVE(11, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(21, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(21, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(23, MOVE_CRUNCH),
LEVEL_UP_MOVE(24, MOVE_BRINE),
LEVEL_UP_MOVE(32, MOVE_CURSE),
LEVEL_UP_MOVE(33, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(35, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(38, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(41, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(43, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(46, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sCarracostaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 5, MOVE_ROLLOUT),
LEVEL_UP_MOVE(11, MOVE_BITE),
LEVEL_UP_MOVE(11, MOVE_PROTECT),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(15, MOVE_AQUA_JET),
LEVEL_UP_MOVE(21, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(21, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(23, MOVE_CRUNCH),
LEVEL_UP_MOVE(24, MOVE_BRINE),
LEVEL_UP_MOVE(32, MOVE_CURSE),
LEVEL_UP_MOVE(33, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(38, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(40, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(44, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(49, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(54, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sArchenLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 6, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(15, MOVE_PLUCK),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(21, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(21, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(26, MOVE_AGILITY),
LEVEL_UP_MOVE(28, MOVE_ACROBATICS),
LEVEL_UP_MOVE(31, MOVE_U_TURN),
LEVEL_UP_MOVE(32, MOVE_CRUNCH),
LEVEL_UP_MOVE(35, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(36, MOVE_TAILWIND),
LEVEL_UP_MOVE(41, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(43, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(46, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sArcheopsLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 8, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(15, MOVE_PLUCK),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(21, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(21, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(26, MOVE_AGILITY),
LEVEL_UP_MOVE(28, MOVE_ACROBATICS),
LEVEL_UP_MOVE(32, MOVE_CRUNCH),
LEVEL_UP_MOVE(34, MOVE_U_TURN),
LEVEL_UP_MOVE(36, MOVE_TAILWIND),
LEVEL_UP_MOVE(38, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(44, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(49, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(54, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sTrubbishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 3, MOVE_RECYCLE),
LEVEL_UP_MOVE( 9, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(10, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(14, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(18, MOVE_SLUDGE),
LEVEL_UP_MOVE(22, MOVE_STOCKPILE),
LEVEL_UP_MOVE(22, MOVE_SWALLOW),
LEVEL_UP_MOVE(24, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(24, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(25, MOVE_AMNESIA),
LEVEL_UP_MOVE(28, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(33, MOVE_TOXIC),
LEVEL_UP_MOVE(36, MOVE_BELCH),
LEVEL_UP_MOVE(37, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(42, MOVE_GUNK_SHOT),
LEVEL_UP_MOVE(44, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sGarbodorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_RECYCLE),
LEVEL_UP_MOVE( 1, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 1, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE( 3, MOVE_RECYCLE),
LEVEL_UP_MOVE(10, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(12, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(14, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(18, MOVE_SLUDGE),
LEVEL_UP_MOVE(22, MOVE_STOCKPILE),
LEVEL_UP_MOVE(22, MOVE_SWALLOW),
LEVEL_UP_MOVE(24, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(24, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(28, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(29, MOVE_AMNESIA),
LEVEL_UP_MOVE(34, MOVE_TOXIC),
LEVEL_UP_MOVE(39, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(40, MOVE_BELCH),
LEVEL_UP_MOVE(49, MOVE_GUNK_SHOT),
LEVEL_UP_MOVE(54, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sZoruaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_PURSUIT),
LEVEL_UP_MOVE( 8, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(12, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(19, MOVE_TORMENT),
LEVEL_UP_MOVE(22, MOVE_TAUNT),
LEVEL_UP_MOVE(24, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(37, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(41, MOVE_EMBARGO),
LEVEL_UP_MOVE(45, MOVE_IMPRISON),
LEVEL_UP_MOVE(45, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(46, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(49, MOVE_NIGHT_DAZE),
LEVEL_UP_END
};

static const struct LevelUpMove sZoroarkLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_U_TURN),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TORMENT),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_DAZE),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 5, MOVE_PURSUIT),
LEVEL_UP_MOVE( 9, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(12, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(22, MOVE_TAUNT),
LEVEL_UP_MOVE(24, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(28, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(30, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(34, MOVE_TORMENT),
LEVEL_UP_MOVE(36, MOVE_AGILITY),
LEVEL_UP_MOVE(42, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(44, MOVE_EMBARGO),
LEVEL_UP_MOVE(49, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(50, MOVE_IMPRISON),
LEVEL_UP_MOVE(53, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(55, MOVE_NIGHT_DAZE),
LEVEL_UP_END
};

static const struct LevelUpMove sMinccinoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 3, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(16, MOVE_SING),
LEVEL_UP_MOVE(19, MOVE_SWIFT),
LEVEL_UP_MOVE(19, MOVE_ENCORE),
LEVEL_UP_MOVE(21, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(21, MOVE_TICKLE),
LEVEL_UP_MOVE(22, MOVE_CHARM),
LEVEL_UP_MOVE(28, MOVE_TAIL_SLAP),
LEVEL_UP_MOVE(31, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(38, MOVE_SLAM),
LEVEL_UP_MOVE(39, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(39, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(43, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(46, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sCinccinoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BULLET_SEED),
LEVEL_UP_MOVE( 1, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_AFTER_YOU),
LEVEL_UP_MOVE( 1, MOVE_TAIL_SLAP),
LEVEL_UP_MOVE( 1, MOVE_TICKLE),
LEVEL_UP_MOVE( 1, MOVE_SLAM),
LEVEL_UP_MOVE( 1, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE( 1, MOVE_LAST_RESORT),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sGothitaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 3, MOVE_CONFUSION),
LEVEL_UP_MOVE( 5, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 7, MOVE_TICKLE),
LEVEL_UP_MOVE(14, MOVE_PSYBEAM),
LEVEL_UP_MOVE(14, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(18, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(19, MOVE_EMBARGO),
LEVEL_UP_MOVE(22, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(24, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(24, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(32, MOVE_CHARM),
LEVEL_UP_MOVE(33, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(33, MOVE_FLATTER),
LEVEL_UP_MOVE(33, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(36, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(40, MOVE_TELEKINESIS),
LEVEL_UP_MOVE(48, MOVE_MAGIC_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sGothoritaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_TICKLE),
LEVEL_UP_MOVE( 1, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE( 3, MOVE_CONFUSION),
LEVEL_UP_MOVE( 7, MOVE_TICKLE),
LEVEL_UP_MOVE(14, MOVE_PSYBEAM),
LEVEL_UP_MOVE(14, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(18, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(19, MOVE_EMBARGO),
LEVEL_UP_MOVE(22, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(24, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(24, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(34, MOVE_CHARM),
LEVEL_UP_MOVE(34, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(35, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(36, MOVE_FLATTER),
LEVEL_UP_MOVE(39, MOVE_PSYCHIC),
LEVEL_UP_MOVE(40, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(43, MOVE_TELEKINESIS),
LEVEL_UP_MOVE(55, MOVE_MAGIC_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sGothitelleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_TICKLE),
LEVEL_UP_MOVE( 1, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE( 3, MOVE_CONFUSION),
LEVEL_UP_MOVE( 7, MOVE_TICKLE),
LEVEL_UP_MOVE(14, MOVE_PSYBEAM),
LEVEL_UP_MOVE(14, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(18, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(19, MOVE_EMBARGO),
LEVEL_UP_MOVE(22, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(24, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(24, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(34, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(35, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(36, MOVE_CHARM),
LEVEL_UP_MOVE(37, MOVE_FLATTER),
LEVEL_UP_MOVE(39, MOVE_PSYCHIC),
LEVEL_UP_MOVE(42, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(45, MOVE_TELEKINESIS),
LEVEL_UP_MOVE(61, MOVE_MAGIC_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sSolosisLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 7, MOVE_ROLLOUT),
LEVEL_UP_MOVE(10, MOVE_SNATCH),
LEVEL_UP_MOVE(12, MOVE_PSYBEAM),
LEVEL_UP_MOVE(12, MOVE_REFLECT),
LEVEL_UP_MOVE(14, MOVE_RECOVER),
LEVEL_UP_MOVE(14, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(17, MOVE_CHARM),
LEVEL_UP_MOVE(18, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(19, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(22, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(28, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE(33, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(36, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(40, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(46, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(48, MOVE_WONDER_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sDuosionLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_RECOVER),
LEVEL_UP_MOVE( 1, MOVE_ENDEAVOR),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_SNATCH),
LEVEL_UP_MOVE( 7, MOVE_ROLLOUT),
LEVEL_UP_MOVE(10, MOVE_SNATCH),
LEVEL_UP_MOVE(12, MOVE_PSYBEAM),
LEVEL_UP_MOVE(12, MOVE_REFLECT),
LEVEL_UP_MOVE(14, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(17, MOVE_CHARM),
LEVEL_UP_MOVE(19, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(22, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(24, MOVE_RECOVER),
LEVEL_UP_MOVE(28, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE(28, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(34, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(39, MOVE_PSYCHIC),
LEVEL_UP_MOVE(40, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(44, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(50, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(55, MOVE_WONDER_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sReuniclusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 0, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_RECOVER),
LEVEL_UP_MOVE( 1, MOVE_ENDEAVOR),
LEVEL_UP_MOVE( 1, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_PSYWAVE),
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_SNATCH),
LEVEL_UP_MOVE( 7, MOVE_ROLLOUT),
LEVEL_UP_MOVE(10, MOVE_SNATCH),
LEVEL_UP_MOVE(12, MOVE_PSYBEAM),
LEVEL_UP_MOVE(12, MOVE_REFLECT),
LEVEL_UP_MOVE(14, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(17, MOVE_CHARM),
LEVEL_UP_MOVE(19, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(22, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(24, MOVE_RECOVER),
LEVEL_UP_MOVE(28, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE(28, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(34, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(39, MOVE_PSYCHIC),
LEVEL_UP_MOVE(41, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE(42, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(46, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(54, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(61, MOVE_WONDER_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sDucklettLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 3, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 6, MOVE_DEFOG),
LEVEL_UP_MOVE( 9, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(13, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(15, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(19, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(21, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(24, MOVE_AQUA_RING),
LEVEL_UP_MOVE(27, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(30, MOVE_ROOST),
LEVEL_UP_MOVE(34, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(37, MOVE_TAILWIND),
LEVEL_UP_MOVE(41, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(46, MOVE_HURRICANE),
LEVEL_UP_END
};

static const struct LevelUpMove sSwannaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 1, MOVE_DEFOG),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 3, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 6, MOVE_DEFOG),
LEVEL_UP_MOVE( 9, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(13, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(15, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(19, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(21, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(24, MOVE_AQUA_RING),
LEVEL_UP_MOVE(27, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(30, MOVE_ROOST),
LEVEL_UP_MOVE(34, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(40, MOVE_TAILWIND),
LEVEL_UP_MOVE(47, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(55, MOVE_HURRICANE),
LEVEL_UP_END
};

static const struct LevelUpMove sVanilliteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_MIST),
LEVEL_UP_MOVE(12, MOVE_ICY_WIND),
LEVEL_UP_MOVE(13, MOVE_TAUNT),
LEVEL_UP_MOVE(17, MOVE_AVALANCHE),
LEVEL_UP_MOVE(18, MOVE_UPROAR),
LEVEL_UP_MOVE(24, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE(26, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(30, MOVE_HAIL),
LEVEL_UP_MOVE(31, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(37, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(40, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(46, MOVE_BLIZZARD),
LEVEL_UP_MOVE(50, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sVanillishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE( 1, MOVE_UPROAR),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_ICY_WIND),
LEVEL_UP_MOVE(16, MOVE_MIST),
LEVEL_UP_MOVE(17, MOVE_AVALANCHE),
LEVEL_UP_MOVE(18, MOVE_UPROAR),
LEVEL_UP_MOVE(22, MOVE_TAUNT),
LEVEL_UP_MOVE(24, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE(26, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(31, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(32, MOVE_HAIL),
LEVEL_UP_MOVE(39, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(42, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(51, MOVE_BLIZZARD),
LEVEL_UP_MOVE(57, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sVanilluxeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WEATHER_BALL),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE( 1, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_SHEER_COLD),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE( 1, MOVE_UPROAR),
LEVEL_UP_MOVE( 4, MOVE_HARDEN),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_ICY_WIND),
LEVEL_UP_MOVE(16, MOVE_MIST),
LEVEL_UP_MOVE(17, MOVE_AVALANCHE),
LEVEL_UP_MOVE(18, MOVE_UPROAR),
LEVEL_UP_MOVE(22, MOVE_TAUNT),
LEVEL_UP_MOVE(24, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE(26, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(31, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(32, MOVE_HAIL),
LEVEL_UP_MOVE(39, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(44, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(55, MOVE_BLIZZARD),
LEVEL_UP_MOVE(63, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sDeerlingLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CAMOUFLAGE),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(10, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(13, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(16, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(20, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(24, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(28, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(32, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(36, MOVE_CHARM),
LEVEL_UP_MOVE(41, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(46, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(51, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sSawsbuckLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HORN_LEECH),
LEVEL_UP_MOVE( 1, MOVE_HORN_LEECH),
LEVEL_UP_MOVE( 1, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CAMOUFLAGE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(10, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(13, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(16, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(20, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(24, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(28, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(32, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(36, MOVE_CHARM),
LEVEL_UP_MOVE(37, MOVE_HORN_LEECH),
LEVEL_UP_MOVE(44, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(52, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(60, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sEmolgaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 6, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(12, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(14, MOVE_CHARGE),
LEVEL_UP_MOVE(15, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(15, MOVE_NUZZLE),
LEVEL_UP_MOVE(16, MOVE_PURSUIT),
LEVEL_UP_MOVE(20, MOVE_SPARK),
LEVEL_UP_MOVE(22, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(26, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(27, MOVE_ACROBATICS),
LEVEL_UP_MOVE(36, MOVE_ENCORE),
LEVEL_UP_MOVE(38, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(41, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE(50, MOVE_DISCHARGE),
LEVEL_UP_MOVE(50, MOVE_AGILITY),
LEVEL_UP_END
};

static const struct LevelUpMove sKarrablastLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 8, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 8, MOVE_ENDURE),
LEVEL_UP_MOVE(16, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(16, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(19, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(20, MOVE_HEADBUTT),
LEVEL_UP_MOVE(32, MOVE_SLASH),
LEVEL_UP_MOVE(34, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(35, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(37, MOVE_FLAIL),
LEVEL_UP_MOVE(38, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(38, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(44, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(52, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sEscavalierLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FELL_STINGER),
LEVEL_UP_MOVE( 1, MOVE_ENDURE),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 1, MOVE_TWINEEDLE),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 8, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(13, MOVE_TWINEEDLE),
LEVEL_UP_MOVE(16, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(16, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(19, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(20, MOVE_HEADBUTT),
LEVEL_UP_MOVE(32, MOVE_SLASH),
LEVEL_UP_MOVE(34, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(35, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(37, MOVE_REVERSAL),
LEVEL_UP_MOVE(38, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(38, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(44, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(52, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE(52, MOVE_METAL_BURST),
LEVEL_UP_MOVE(60, MOVE_FELL_STINGER),
LEVEL_UP_END
};

static const struct LevelUpMove sFoongusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 5, MOVE_GROWTH),
LEVEL_UP_MOVE( 8, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 8, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_BIDE),
LEVEL_UP_MOVE(13, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(20, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(24, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(24, MOVE_INGRAIN),
LEVEL_UP_MOVE(26, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(28, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(30, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(33, MOVE_TOXIC),
LEVEL_UP_MOVE(42, MOVE_RAGE_POWDER),
LEVEL_UP_MOVE(43, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(49, MOVE_SPORE),
LEVEL_UP_END
};

static const struct LevelUpMove sAmoongussLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 6, MOVE_GROWTH),
LEVEL_UP_MOVE( 8, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_BIDE),
LEVEL_UP_MOVE(13, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(20, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(24, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(24, MOVE_INGRAIN),
LEVEL_UP_MOVE(26, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(28, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(32, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(33, MOVE_TOXIC),
LEVEL_UP_MOVE(48, MOVE_RAGE_POWDER),
LEVEL_UP_MOVE(48, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(58, MOVE_SPORE),
LEVEL_UP_END
};

static const struct LevelUpMove sFrillishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 4, MOVE_POISON_STING),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE( 8, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(13, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(17, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(21, MOVE_RECOVER),
LEVEL_UP_MOVE(27, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(27, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(28, MOVE_BRINE),
LEVEL_UP_MOVE(32, MOVE_HEX),
LEVEL_UP_MOVE(32, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(36, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(44, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(45, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(55, MOVE_WATER_SPOUT),
LEVEL_UP_MOVE(55, MOVE_WRING_OUT),
LEVEL_UP_END
};

static const struct LevelUpMove sJellicentLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPOUT),
LEVEL_UP_MOVE( 1, MOVE_WRING_OUT),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE( 9, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(13, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(17, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(21, MOVE_RECOVER),
LEVEL_UP_MOVE(27, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(27, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(28, MOVE_BRINE),
LEVEL_UP_MOVE(32, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(33, MOVE_HEX),
LEVEL_UP_MOVE(36, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(48, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(48, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(61, MOVE_WRING_OUT),
LEVEL_UP_MOVE(62, MOVE_WATER_SPOUT),
LEVEL_UP_END
};

static const struct LevelUpMove sAlomomolaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_HEALING_WISH),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_AQUA_RING),
LEVEL_UP_MOVE( 9, MOVE_AQUA_JET),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(17, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(21, MOVE_PROTECT),
LEVEL_UP_MOVE(25, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(29, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(33, MOVE_SOAK),
LEVEL_UP_MOVE(37, MOVE_WISH),
LEVEL_UP_MOVE(41, MOVE_BRINE),
LEVEL_UP_MOVE(45, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(49, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(49, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(54, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(57, MOVE_HEALING_WISH),
LEVEL_UP_MOVE(61, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sJoltikLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_SPIDER_WEB),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(10, MOVE_ELECTROWEB),
LEVEL_UP_MOVE(12, MOVE_STRING_SHOT),
LEVEL_UP_MOVE(12, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(13, MOVE_BUG_BITE),
LEVEL_UP_MOVE(21, MOVE_SCREECH),
LEVEL_UP_MOVE(24, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(28, MOVE_SLASH),
LEVEL_UP_MOVE(31, MOVE_AGILITY),
LEVEL_UP_MOVE(32, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(34, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(34, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(41, MOVE_DISCHARGE),
LEVEL_UP_MOVE(48, MOVE_BUG_BUZZ),
LEVEL_UP_END
};

static const struct LevelUpMove sGalvantulaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_STICKY_WEB),
LEVEL_UP_MOVE( 1, MOVE_STICKY_WEB),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_ELECTROWEB),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_SPIDER_WEB),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(12, MOVE_STRING_SHOT),
LEVEL_UP_MOVE(12, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(15, MOVE_ELECTROWEB),
LEVEL_UP_MOVE(18, MOVE_BUG_BITE),
LEVEL_UP_MOVE(23, MOVE_SCREECH),
LEVEL_UP_MOVE(24, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(28, MOVE_SLASH),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(34, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(35, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(37, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(47, MOVE_DISCHARGE),
LEVEL_UP_MOVE(58, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(65, MOVE_STICKY_WEB),
LEVEL_UP_END
};

static const struct LevelUpMove sFerroseedLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 6, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 9, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(14, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(23, MOVE_CURSE),
LEVEL_UP_MOVE(25, MOVE_INGRAIN),
LEVEL_UP_MOVE(30, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(30, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(31, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(34, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(34, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(37, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(47, MOVE_PAYBACK),
LEVEL_UP_MOVE(52, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sFerrothornLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_POWER_WHIP),
LEVEL_UP_MOVE( 1, MOVE_POWER_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE( 1, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 6, MOVE_ROLLOUT),
LEVEL_UP_MOVE(14, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(18, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(24, MOVE_CURSE),
LEVEL_UP_MOVE(25, MOVE_INGRAIN),
LEVEL_UP_MOVE(30, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(30, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(33, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(34, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(36, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(40, MOVE_POWER_WHIP),
LEVEL_UP_MOVE(42, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(53, MOVE_PAYBACK),
LEVEL_UP_MOVE(62, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sKlinkLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 6, MOVE_CHARGE),
LEVEL_UP_MOVE(11, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(13, MOVE_BIND),
LEVEL_UP_MOVE(19, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(23, MOVE_GEAR_GRIND),
LEVEL_UP_MOVE(26, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(31, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(33, MOVE_DISCHARGE),
LEVEL_UP_MOVE(34, MOVE_SCREECH),
LEVEL_UP_MOVE(36, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(43, MOVE_LOCK_ON),
LEVEL_UP_MOVE(44, MOVE_SHIFT_GEAR),
LEVEL_UP_MOVE(49, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(52, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sKlangLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_GEAR_GRIND),
LEVEL_UP_MOVE( 6, MOVE_CHARGE),
LEVEL_UP_MOVE(11, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(19, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(21, MOVE_BIND),
LEVEL_UP_MOVE(23, MOVE_GEAR_GRIND),
LEVEL_UP_MOVE(26, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(33, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(34, MOVE_DISCHARGE),
LEVEL_UP_MOVE(34, MOVE_SCREECH),
LEVEL_UP_MOVE(36, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(46, MOVE_LOCK_ON),
LEVEL_UP_MOVE(47, MOVE_SHIFT_GEAR),
LEVEL_UP_MOVE(54, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(59, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sKlinklangLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_MAGNETIC_FLUX),
LEVEL_UP_MOVE( 1, MOVE_GEAR_UP),
LEVEL_UP_MOVE( 1, MOVE_MAGNETIC_FLUX),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_GEAR_GRIND),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 6, MOVE_CHARGE),
LEVEL_UP_MOVE(11, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(19, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(21, MOVE_BIND),
LEVEL_UP_MOVE(23, MOVE_GEAR_GRIND),
LEVEL_UP_MOVE(26, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(33, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(34, MOVE_DISCHARGE),
LEVEL_UP_MOVE(34, MOVE_SCREECH),
LEVEL_UP_MOVE(36, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(48, MOVE_SHIFT_GEAR),
LEVEL_UP_MOVE(49, MOVE_LOCK_ON),
LEVEL_UP_MOVE(57, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(64, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(64, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE(76, MOVE_MAGNETIC_FLUX),
LEVEL_UP_END
};

static const struct LevelUpMove sTynamoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_CHARGE_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sEelektrikLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE( 9, MOVE_BIND),
LEVEL_UP_MOVE(19, MOVE_ACID),
LEVEL_UP_MOVE(29, MOVE_DISCHARGE),
LEVEL_UP_MOVE(39, MOVE_CRUNCH),
LEVEL_UP_MOVE(44, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(49, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(54, MOVE_COIL),
LEVEL_UP_MOVE(59, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(64, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(69, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(74, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sEelektrossLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE( 1, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE( 1, MOVE_COIL),
LEVEL_UP_MOVE( 1, MOVE_ION_DELUGE),
LEVEL_UP_MOVE( 1, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sElgyemLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(11, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE(12, MOVE_TELEPORT),
LEVEL_UP_MOVE(16, MOVE_IMPRISON),
LEVEL_UP_MOVE(16, MOVE_PSYBEAM),
LEVEL_UP_MOVE(22, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(23, MOVE_HEADBUTT),
LEVEL_UP_MOVE(29, MOVE_SIMPLE_BEAM),
LEVEL_UP_MOVE(33, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(36, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(38, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(38, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(44, MOVE_RECOVER),
LEVEL_UP_MOVE(45, MOVE_CALM_MIND),
LEVEL_UP_MOVE(48, MOVE_PSYCHIC),
LEVEL_UP_MOVE(53, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(55, MOVE_WONDER_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sBeheeyemLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PSYCHIC_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 1, MOVE_WONDER_ROOM),
LEVEL_UP_MOVE( 1, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE( 1, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(11, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE(16, MOVE_PSYBEAM),
LEVEL_UP_MOVE(22, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(23, MOVE_HEADBUTT),
LEVEL_UP_MOVE(25, MOVE_IMPRISON),
LEVEL_UP_MOVE(29, MOVE_SIMPLE_BEAM),
LEVEL_UP_MOVE(33, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(36, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(41, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(42, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(47, MOVE_RECOVER),
LEVEL_UP_MOVE(48, MOVE_CALM_MIND),
LEVEL_UP_MOVE(52, MOVE_PSYCHIC),
LEVEL_UP_MOVE(63, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(64, MOVE_WONDER_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sLitwickLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 4, MOVE_EMBER),
LEVEL_UP_MOVE( 5, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 5, MOVE_SMOG),
LEVEL_UP_MOVE(10, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(14, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(17, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(19, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(20, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(22, MOVE_HEX),
LEVEL_UP_MOVE(33, MOVE_IMPRISON),
LEVEL_UP_MOVE(38, MOVE_CURSE),
LEVEL_UP_MOVE(38, MOVE_INFERNO),
LEVEL_UP_MOVE(43, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(43, MOVE_MEMENTO),
LEVEL_UP_MOVE(51, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(56, MOVE_OVERHEAT),
LEVEL_UP_END
};

static const struct LevelUpMove sLampentLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 3, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 5, MOVE_SMOG),
LEVEL_UP_MOVE(10, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(14, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(17, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(19, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(20, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(22, MOVE_HEX),
LEVEL_UP_MOVE(33, MOVE_IMPRISON),
LEVEL_UP_MOVE(38, MOVE_INFERNO),
LEVEL_UP_MOVE(39, MOVE_CURSE),
LEVEL_UP_MOVE(45, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(47, MOVE_MEMENTO),
LEVEL_UP_MOVE(56, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(64, MOVE_OVERHEAT),
LEVEL_UP_END
};

static const struct LevelUpMove sChandelureLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_HEX),
LEVEL_UP_MOVE( 1, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE( 1, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 1, MOVE_INFERNO),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 1, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE( 1, MOVE_OVERHEAT),
LEVEL_UP_MOVE( 1, MOVE_MEMENTO),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_FLAME_BURST),
LEVEL_UP_END
};

static const struct LevelUpMove sAxewLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 3, MOVE_BITE),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_ASSURANCE),
LEVEL_UP_MOVE(10, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(15, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(17, MOVE_SLASH),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(20, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE(23, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(24, MOVE_CRUNCH),
LEVEL_UP_MOVE(25, MOVE_TAUNT),
LEVEL_UP_MOVE(29, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(33, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(38, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(42, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(47, MOVE_GUILLOTINE),
LEVEL_UP_MOVE(49, MOVE_OUTRAGE),
LEVEL_UP_MOVE(55, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sFraxureLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_ASSURANCE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_ASSURANCE),
LEVEL_UP_MOVE(10, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(17, MOVE_SLASH),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(20, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE(23, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(24, MOVE_CRUNCH),
LEVEL_UP_MOVE(24, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(25, MOVE_TAUNT),
LEVEL_UP_MOVE(29, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(33, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(39, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(44, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(52, MOVE_GUILLOTINE),
LEVEL_UP_MOVE(53, MOVE_OUTRAGE),
LEVEL_UP_MOVE(61, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sHaxorusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 1, MOVE_ASSURANCE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_ASSURANCE),
LEVEL_UP_MOVE(10, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(17, MOVE_SLASH),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(20, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE(23, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(24, MOVE_CRUNCH),
LEVEL_UP_MOVE(24, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(25, MOVE_TAUNT),
LEVEL_UP_MOVE(29, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(33, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(39, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(45, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(55, MOVE_GUILLOTINE),
LEVEL_UP_MOVE(56, MOVE_OUTRAGE),
LEVEL_UP_MOVE(67, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sCubchooLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 9, MOVE_BIDE),
LEVEL_UP_MOVE(11, MOVE_ICY_WIND),
LEVEL_UP_MOVE(12, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(13, MOVE_PLAY_NICE),
LEVEL_UP_MOVE(15, MOVE_ENDURE),
LEVEL_UP_MOVE(18, MOVE_BRINE),
LEVEL_UP_MOVE(18, MOVE_FROST_BREATH),
LEVEL_UP_MOVE(27, MOVE_SLASH),
LEVEL_UP_MOVE(28, MOVE_CHARM),
LEVEL_UP_MOVE(30, MOVE_FLAIL),
LEVEL_UP_MOVE(30, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(38, MOVE_REST),
LEVEL_UP_MOVE(38, MOVE_BULLDOZE),
LEVEL_UP_MOVE(40, MOVE_HAIL),
LEVEL_UP_MOVE(42, MOVE_BLIZZARD),
LEVEL_UP_MOVE(43, MOVE_THRASH),
LEVEL_UP_MOVE(50, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sBearticLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ENDURE),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 5, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 9, MOVE_BIDE),
LEVEL_UP_MOVE(11, MOVE_ICY_WIND),
LEVEL_UP_MOVE(11, MOVE_PLAY_NICE),
LEVEL_UP_MOVE(17, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(18, MOVE_BRINE),
LEVEL_UP_MOVE(18, MOVE_FROST_BREATH),
LEVEL_UP_MOVE(25, MOVE_ENDURE),
LEVEL_UP_MOVE(27, MOVE_SLASH),
LEVEL_UP_MOVE(28, MOVE_SWAGGER),
LEVEL_UP_MOVE(30, MOVE_FLAIL),
LEVEL_UP_MOVE(32, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(34, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(36, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE(38, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(40, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE(42, MOVE_HAIL),
LEVEL_UP_MOVE(43, MOVE_BLIZZARD),
LEVEL_UP_MOVE(45, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(47, MOVE_THRASH),
LEVEL_UP_MOVE(51, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(56, MOVE_SHEER_COLD),
LEVEL_UP_MOVE(60, MOVE_EARTHQUAKE),
LEVEL_UP_END
};

static const struct LevelUpMove sCryogonalLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 1, MOVE_SHEER_COLD),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SHARPEN),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 5, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 9, MOVE_SHARPEN),
LEVEL_UP_MOVE(10, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(12, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(14, MOVE_ICY_WIND),
LEVEL_UP_MOVE(18, MOVE_MIST),
LEVEL_UP_MOVE(18, MOVE_HAZE),
LEVEL_UP_MOVE(23, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(24, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(25, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(36, MOVE_SLASH),
LEVEL_UP_MOVE(37, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(37, MOVE_REFLECT),
LEVEL_UP_MOVE(37, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(38, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(42, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(45, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(46, MOVE_RECOVER),
LEVEL_UP_MOVE(53, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(60, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sShelmetLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 4, MOVE_ACID),
LEVEL_UP_MOVE( 8, MOVE_BIDE),
LEVEL_UP_MOVE(10, MOVE_CURSE),
LEVEL_UP_MOVE(16, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(16, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(22, MOVE_YAWN),
LEVEL_UP_MOVE(28, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(28, MOVE_PROTECT),
LEVEL_UP_MOVE(32, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(38, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(42, MOVE_GUARD_SWAP),
LEVEL_UP_MOVE(44, MOVE_RECOVER),
LEVEL_UP_MOVE(44, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(52, MOVE_FINAL_GAMBIT),
LEVEL_UP_END
};

static const struct LevelUpMove sAccelgorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_SHURIKEN),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 1, MOVE_YAWN),
LEVEL_UP_MOVE( 1, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE( 1, MOVE_GUARD_SWAP),
LEVEL_UP_MOVE( 1, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FINAL_GAMBIT),
LEVEL_UP_MOVE( 1, MOVE_POWER_SWAP),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 4, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 8, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(13, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(16, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(16, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(22, MOVE_SWIFT),
LEVEL_UP_MOVE(28, MOVE_AGILITY),
LEVEL_UP_MOVE(28, MOVE_ME_FIRST),
LEVEL_UP_MOVE(32, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(38, MOVE_U_TURN),
LEVEL_UP_MOVE(42, MOVE_POWER_SWAP),
LEVEL_UP_MOVE(44, MOVE_RECOVER),
LEVEL_UP_MOVE(44, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(52, MOVE_FINAL_GAMBIT),
LEVEL_UP_MOVE(52, MOVE_TOXIC),
LEVEL_UP_END
};

static const struct LevelUpMove sStunfiskLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_FISSURE),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 5, MOVE_BIDE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(11, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(17, MOVE_CAMOUFLAGE),
LEVEL_UP_MOVE(18, MOVE_ENDURE),
LEVEL_UP_MOVE(20, MOVE_CHARGE),
LEVEL_UP_MOVE(21, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(25, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(30, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE(34, MOVE_REVENGE),
LEVEL_UP_MOVE(34, MOVE_DISCHARGE),
LEVEL_UP_MOVE(35, MOVE_BOUNCE),
LEVEL_UP_MOVE(40, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(45, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(52, MOVE_FLAIL),
LEVEL_UP_MOVE(58, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sMienfooLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_DETECT),
LEVEL_UP_MOVE( 5, MOVE_MEDITATE),
LEVEL_UP_MOVE( 9, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 9, MOVE_DETECT),
LEVEL_UP_MOVE(15, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(21, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_FORCE_PALM),
LEVEL_UP_MOVE(33, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(33, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE(35, MOVE_REVERSAL),
LEVEL_UP_MOVE(36, MOVE_U_TURN),
LEVEL_UP_MOVE(37, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(38, MOVE_CALM_MIND),
LEVEL_UP_MOVE(40, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(49, MOVE_BOUNCE),
LEVEL_UP_MOVE(53, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE(55, MOVE_HI_JUMP_KICK),
LEVEL_UP_END
};

static const struct LevelUpMove sMienshaoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_DETECT),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_REVERSAL),
LEVEL_UP_MOVE( 1, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE( 1, MOVE_MEDITATE),
LEVEL_UP_MOVE( 5, MOVE_MEDITATE),
LEVEL_UP_MOVE( 9, MOVE_DETECT),
LEVEL_UP_MOVE(13, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(15, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(21, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_FORCE_PALM),
LEVEL_UP_MOVE(33, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(33, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE(36, MOVE_U_TURN),
LEVEL_UP_MOVE(37, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(40, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(40, MOVE_CALM_MIND),
LEVEL_UP_MOVE(50, MOVE_BOUNCE),
LEVEL_UP_MOVE(58, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE(60, MOVE_HI_JUMP_KICK),
LEVEL_UP_MOVE(63, MOVE_REVERSAL),
LEVEL_UP_END
};

static const struct LevelUpMove sDruddigonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(16, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(18, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(18, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(22, MOVE_SLASH),
LEVEL_UP_MOVE(28, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(29, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(31, MOVE_CRUNCH),
LEVEL_UP_MOVE(31, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(35, MOVE_REVENGE),
LEVEL_UP_MOVE(40, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(45, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(49, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE(55, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(56, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sGolettLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 5, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 8, MOVE_POUND),
LEVEL_UP_MOVE( 9, MOVE_ROLLOUT),
LEVEL_UP_MOVE(12, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE(21, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(23, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(26, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE(26, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(28, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(29, MOVE_CURSE),
LEVEL_UP_MOVE(36, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(40, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(42, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(44, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(48, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(49, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(56, MOVE_FOCUS_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sGolurkLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_HIGH_HORSEPOWER),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE( 5, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 9, MOVE_ROLLOUT),
LEVEL_UP_MOVE(12, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE(21, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(23, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(26, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE(26, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(28, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(30, MOVE_CURSE),
LEVEL_UP_MOVE(36, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(41, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(46, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(54, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(56, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(58, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(69, MOVE_FOCUS_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sPawniardLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 6, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(14, MOVE_TORMENT),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(18, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(21, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(29, MOVE_ASSURANCE),
LEVEL_UP_MOVE(32, MOVE_SLASH),
LEVEL_UP_MOVE(34, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(41, MOVE_EMBARGO),
LEVEL_UP_MOVE(44, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(45, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(50, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(54, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(58, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(63, MOVE_GUILLOTINE),
LEVEL_UP_END
};

static const struct LevelUpMove sBisharpLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_METAL_BURST),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_GUILLOTINE),
LEVEL_UP_MOVE( 1, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_TORMENT),
LEVEL_UP_MOVE( 6, MOVE_LEER),
LEVEL_UP_MOVE( 9, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(14, MOVE_TORMENT),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(21, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(25, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(29, MOVE_ASSURANCE),
LEVEL_UP_MOVE(32, MOVE_SLASH),
LEVEL_UP_MOVE(34, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(41, MOVE_EMBARGO),
LEVEL_UP_MOVE(44, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(45, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(50, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(57, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(63, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(71, MOVE_GUILLOTINE),
LEVEL_UP_END
};

static const struct LevelUpMove sBouffalantLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 6, MOVE_RAGE),
LEVEL_UP_MOVE(10, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(20, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(20, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(21, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(21, MOVE_REVENGE),
LEVEL_UP_MOVE(35, MOVE_THROAT_CHOP),
LEVEL_UP_MOVE(35, MOVE_HEAD_CHARGE),
LEVEL_UP_MOVE(38, MOVE_REVERSAL),
LEVEL_UP_MOVE(45, MOVE_MEGAHORN),
LEVEL_UP_MOVE(50, MOVE_THRASH),
LEVEL_UP_MOVE(51, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(58, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sRuffletLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(10, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(10, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(21, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(26, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(28, MOVE_TAILWIND),
LEVEL_UP_MOVE(31, MOVE_SLASH),
LEVEL_UP_MOVE(44, MOVE_DEFOG),
LEVEL_UP_MOVE(46, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(47, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(49, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(50, MOVE_SKY_DROP),
LEVEL_UP_MOVE(64, MOVE_THRASH),
LEVEL_UP_MOVE(64, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sBraviaryLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SUPERPOWER),
LEVEL_UP_MOVE( 1, MOVE_SUPERPOWER),
LEVEL_UP_MOVE( 1, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE( 1, MOVE_WHIRLWIND),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(10, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(14, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(21, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(26, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(28, MOVE_TAILWIND),
LEVEL_UP_MOVE(31, MOVE_SLASH),
LEVEL_UP_MOVE(46, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(46, MOVE_DEFOG),
LEVEL_UP_MOVE(48, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(50, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(50, MOVE_SKY_DROP),
LEVEL_UP_MOVE(51, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(70, MOVE_THRASH),
LEVEL_UP_MOVE(70, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sVullabyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(10, MOVE_PLUCK),
LEVEL_UP_MOVE(13, MOVE_FLATTER),
LEVEL_UP_MOVE(23, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(24, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(28, MOVE_TAILWIND),
LEVEL_UP_MOVE(28, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(30, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(32, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(41, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(44, MOVE_DEFOG),
LEVEL_UP_MOVE(46, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(46, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(50, MOVE_EMBARGO),
LEVEL_UP_MOVE(64, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(64, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(66, MOVE_ATTRACT),
LEVEL_UP_END
};

static const struct LevelUpMove sMandibuzzLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BONE_RUSH),
LEVEL_UP_MOVE( 1, MOVE_BONE_RUSH),
LEVEL_UP_MOVE( 1, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TOXIC),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FLATTER),
LEVEL_UP_MOVE( 1, MOVE_PLUCK),
LEVEL_UP_MOVE( 1, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE( 1, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE( 1, MOVE_WHIRLWIND),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(10, MOVE_PLUCK),
LEVEL_UP_MOVE(19, MOVE_FLATTER),
LEVEL_UP_MOVE(23, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(24, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(28, MOVE_TAILWIND),
LEVEL_UP_MOVE(28, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(30, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(33, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(41, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(46, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(46, MOVE_DEFOG),
LEVEL_UP_MOVE(47, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(50, MOVE_EMBARGO),
LEVEL_UP_MOVE(51, MOVE_BONE_RUSH),
LEVEL_UP_MOVE(70, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(70, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(72, MOVE_ATTRACT),
LEVEL_UP_END
};

static const struct LevelUpMove sHeatmorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_INCINERATE),
LEVEL_UP_MOVE( 1, MOVE_INFERNO),
LEVEL_UP_MOVE( 6, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(10, MOVE_INCINERATE),
LEVEL_UP_MOVE(13, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(19, MOVE_BIND),
LEVEL_UP_MOVE(26, MOVE_BUG_BITE),
LEVEL_UP_MOVE(26, MOVE_SNATCH),
LEVEL_UP_MOVE(31, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(31, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(33, MOVE_SLASH),
LEVEL_UP_MOVE(37, MOVE_FIRE_LASH),
LEVEL_UP_MOVE(38, MOVE_STOCKPILE),
LEVEL_UP_MOVE(38, MOVE_SWALLOW),
LEVEL_UP_MOVE(38, MOVE_SPIT_UP),
LEVEL_UP_MOVE(40, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(45, MOVE_AMNESIA),
LEVEL_UP_MOVE(49, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(58, MOVE_INFERNO),
LEVEL_UP_MOVE(60, MOVE_FLARE_BLITZ),
LEVEL_UP_END
};

static const struct LevelUpMove sDurantLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_METAL_SOUND),
LEVEL_UP_MOVE( 1, MOVE_GUILLOTINE),
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 4, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 6, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(12, MOVE_BEAT_UP),
LEVEL_UP_MOVE(13, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(15, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_AGILITY),
LEVEL_UP_MOVE(20, MOVE_BUG_BITE),
LEVEL_UP_MOVE(31, MOVE_CRUNCH),
LEVEL_UP_MOVE(33, MOVE_DIG),
LEVEL_UP_MOVE(38, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(41, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(45, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(52, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(52, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(57, MOVE_GUILLOTINE),
LEVEL_UP_END
};

static const struct LevelUpMove sDeinoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 4, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE(11, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(15, MOVE_HEADBUTT),
LEVEL_UP_MOVE(16, MOVE_ROAR),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(28, MOVE_SLAM),
LEVEL_UP_MOVE(28, MOVE_CRUNCH),
LEVEL_UP_MOVE(31, MOVE_WORK_UP),
LEVEL_UP_MOVE(35, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(44, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(46, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(46, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(53, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(56, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(61, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sZweilousLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 4, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_HEADBUTT),
LEVEL_UP_MOVE(16, MOVE_ROAR),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(17, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(28, MOVE_SLAM),
LEVEL_UP_MOVE(28, MOVE_CRUNCH),
LEVEL_UP_MOVE(31, MOVE_WORK_UP),
LEVEL_UP_MOVE(35, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(46, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(46, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(47, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(56, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(60, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(68, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sHydreigonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 1, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 4, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_HEADBUTT),
LEVEL_UP_MOVE(16, MOVE_ROAR),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(17, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(28, MOVE_SLAM),
LEVEL_UP_MOVE(28, MOVE_CRUNCH),
LEVEL_UP_MOVE(31, MOVE_WORK_UP),
LEVEL_UP_MOVE(35, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(46, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(46, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(47, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(58, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(60, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(74, MOVE_OUTRAGE),
LEVEL_UP_MOVE(76, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sLarvestaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE(10, MOVE_ABSORB),
LEVEL_UP_MOVE(12, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(19, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(23, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(30, MOVE_SCREECH),
LEVEL_UP_MOVE(32, MOVE_BUG_BITE),
LEVEL_UP_MOVE(32, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(40, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(54, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(57, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(68, MOVE_AMNESIA),
LEVEL_UP_MOVE(84, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(90, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sVolcaronaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_FIERY_DANCE),
LEVEL_UP_MOVE( 1, MOVE_WHIRLWIND),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE( 1, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 1, MOVE_RAGE_POWDER),
LEVEL_UP_MOVE( 1, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_AMNESIA),
LEVEL_UP_MOVE( 1, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE( 1, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(10, MOVE_ABSORB),
LEVEL_UP_MOVE(18, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(20, MOVE_GUST),
LEVEL_UP_MOVE(23, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(24, MOVE_BUG_BITE),
LEVEL_UP_MOVE(30, MOVE_SCREECH),
LEVEL_UP_MOVE(30, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(40, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(50, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(54, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE(54, MOVE_AMNESIA),
LEVEL_UP_MOVE(57, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(59, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE(70, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(77, MOVE_HURRICANE),
LEVEL_UP_MOVE(79, MOVE_RAGE_POWDER),
LEVEL_UP_MOVE(100, MOVE_FIERY_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sCobalionLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_WORK_UP),
LEVEL_UP_MOVE( 1, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_METAL_BURST),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 9, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(14, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(22, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(27, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(28, MOVE_RETALIATE),
LEVEL_UP_MOVE(34, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(43, MOVE_SACRED_SWORD),
LEVEL_UP_MOVE(47, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(50, MOVE_METAL_BURST),
LEVEL_UP_MOVE(50, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(58, MOVE_WORK_UP),
LEVEL_UP_MOVE(70, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sTerrakionLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_WORK_UP),
LEVEL_UP_MOVE( 1, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 9, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(14, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(22, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(27, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(28, MOVE_RETALIATE),
LEVEL_UP_MOVE(34, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(34, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(43, MOVE_SACRED_SWORD),
LEVEL_UP_MOVE(50, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(58, MOVE_WORK_UP),
LEVEL_UP_MOVE(63, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(70, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sVirizionLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_WORK_UP),
LEVEL_UP_MOVE( 1, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE( 1, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 9, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(14, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(22, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(27, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(28, MOVE_RETALIATE),
LEVEL_UP_MOVE(34, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(34, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(43, MOVE_SACRED_SWORD),
LEVEL_UP_MOVE(50, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(58, MOVE_WORK_UP),
LEVEL_UP_MOVE(63, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(70, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sTornadusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 1, MOVE_UPROAR),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_TAILWIND),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 8, MOVE_SWAGGER),
LEVEL_UP_MOVE(13, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_REVENGE),
LEVEL_UP_MOVE(21, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(30, MOVE_AGILITY),
LEVEL_UP_MOVE(36, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(38, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(42, MOVE_TAILWIND),
LEVEL_UP_MOVE(44, MOVE_CRUNCH),
LEVEL_UP_MOVE(50, MOVE_UPROAR),
LEVEL_UP_MOVE(59, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(65, MOVE_HURRICANE),
LEVEL_UP_MOVE(67, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(71, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(77, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sThundurusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_UPROAR),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 8, MOVE_SWAGGER),
LEVEL_UP_MOVE(13, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_REVENGE),
LEVEL_UP_MOVE(21, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(29, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(30, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE(42, MOVE_CHARGE),
LEVEL_UP_MOVE(43, MOVE_DISCHARGE),
LEVEL_UP_MOVE(44, MOVE_CRUNCH),
LEVEL_UP_MOVE(50, MOVE_UPROAR),
LEVEL_UP_MOVE(59, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(60, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(65, MOVE_THUNDER),
LEVEL_UP_MOVE(67, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(71, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(77, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sReshiramLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(23, MOVE_SLASH),
LEVEL_UP_MOVE(29, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(30, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(34, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(44, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(44, MOVE_IMPRISON),
LEVEL_UP_MOVE(46, MOVE_CRUNCH),
LEVEL_UP_MOVE(49, MOVE_FUSION_FLARE),
LEVEL_UP_MOVE(64, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(71, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(75, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(82, MOVE_OUTRAGE),
LEVEL_UP_MOVE(94, MOVE_BLUE_FLARE),
LEVEL_UP_END
};

static const struct LevelUpMove sZekromLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(23, MOVE_SLASH),
LEVEL_UP_MOVE(29, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(30, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(34, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(44, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(44, MOVE_IMPRISON),
LEVEL_UP_MOVE(46, MOVE_CRUNCH),
LEVEL_UP_MOVE(49, MOVE_FUSION_BOLT),
LEVEL_UP_MOVE(64, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(71, MOVE_THUNDER),
LEVEL_UP_MOVE(75, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(82, MOVE_OUTRAGE),
LEVEL_UP_MOVE(94, MOVE_BOLT_STRIKE),
LEVEL_UP_END
};

static const struct LevelUpMove sLandorusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_FISSURE),
LEVEL_UP_MOVE( 1, MOVE_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_MUD_SHOT),
LEVEL_UP_MOVE( 1, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_BLOCK),
LEVEL_UP_MOVE(11, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(16, MOVE_BULLDOZE),
LEVEL_UP_MOVE(19, MOVE_IMPRISON),
LEVEL_UP_MOVE(20, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(23, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(30, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(36, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(40, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(41, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(58, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(59, MOVE_SANDSTORM),
LEVEL_UP_MOVE(61, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(67, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(69, MOVE_FISSURE),
LEVEL_UP_MOVE(77, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sKyuremLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE( 1, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(23, MOVE_SLASH),
LEVEL_UP_MOVE(26, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(29, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(42, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(42, MOVE_IMPRISON),
LEVEL_UP_MOVE(45, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(46, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(63, MOVE_GLACIATE),
LEVEL_UP_MOVE(64, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(68, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(68, MOVE_BLIZZARD),
LEVEL_UP_MOVE(79, MOVE_OUTRAGE),
LEVEL_UP_MOVE(88, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sKeldeoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SECRET_SWORD),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_WORK_UP),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(10, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(25, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(29, MOVE_RETALIATE),
LEVEL_UP_MOVE(29, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(36, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(36, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(45, MOVE_SACRED_SWORD),
LEVEL_UP_MOVE(52, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(61, MOVE_WORK_UP),
LEVEL_UP_MOVE(65, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(71, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sMeloettaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ROUND),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 6, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(11, MOVE_CONFUSION),
LEVEL_UP_MOVE(16, MOVE_SING),
LEVEL_UP_MOVE(21, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE(26, MOVE_ACROBATICS),
LEVEL_UP_MOVE(31, MOVE_PSYBEAM),
LEVEL_UP_MOVE(36, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(43, MOVE_U_TURN),
LEVEL_UP_MOVE(50, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE(57, MOVE_PSYCHIC),
LEVEL_UP_MOVE(64, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(71, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE(78, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(85, MOVE_PERISH_SONG),
LEVEL_UP_END
};

static const struct LevelUpMove sGenesectLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FELL_STINGER),
LEVEL_UP_MOVE( 1, MOVE_TECHNO_BLAST),
LEVEL_UP_MOVE( 1, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 7, MOVE_SCREECH),
LEVEL_UP_MOVE( 7, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(14, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(21, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(22, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(22, MOVE_MAGNET_BOMB),
LEVEL_UP_MOVE(29, MOVE_SLASH),
LEVEL_UP_MOVE(33, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(40, MOVE_LOCK_ON),
LEVEL_UP_MOVE(40, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(44, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE(46, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(49, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(55, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(62, MOVE_SIMPLE_BEAM),
LEVEL_UP_MOVE(67, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(73, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(83, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(84, MOVE_TECHNO_BLAST),
LEVEL_UP_END
};

static const struct LevelUpMove sChespinLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 8, MOVE_ROLLOUT),
LEVEL_UP_MOVE(11, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(18, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(27, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(32, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(35, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(39, MOVE_BULK_UP),
LEVEL_UP_MOVE(42, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(45, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(48, MOVE_WOOD_HAMMER),
LEVEL_UP_END
};

static const struct LevelUpMove sQuilladinLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_NEEDLE_ARM),
LEVEL_UP_MOVE( 1, MOVE_NEEDLE_ARM),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 8, MOVE_ROLLOUT),
LEVEL_UP_MOVE(11, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(19, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(26, MOVE_NEEDLE_ARM),
LEVEL_UP_MOVE(29, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(35, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(39, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(44, MOVE_BULK_UP),
LEVEL_UP_MOVE(48, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(52, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(55, MOVE_WOOD_HAMMER),
LEVEL_UP_END
};

static const struct LevelUpMove sChesnaughtLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SPIKY_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_SPIKY_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_NEEDLE_ARM),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 5, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 8, MOVE_ROLLOUT),
LEVEL_UP_MOVE(11, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(19, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(26, MOVE_NEEDLE_ARM),
LEVEL_UP_MOVE(29, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(35, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(41, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(45, MOVE_BULK_UP),
LEVEL_UP_MOVE(50, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(54, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(55, MOVE_SPIKY_SHIELD),
LEVEL_UP_MOVE(59, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(64, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(72, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sFennekinLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE(11, MOVE_HOWL),
LEVEL_UP_MOVE(14, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(17, MOVE_PSYBEAM),
LEVEL_UP_MOVE(20, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(25, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(27, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(31, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(35, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(38, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(41, MOVE_PSYCHIC),
LEVEL_UP_MOVE(43, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(46, MOVE_MAGIC_ROOM),
LEVEL_UP_MOVE(48, MOVE_FIRE_BLAST),
LEVEL_UP_END
};

static const struct LevelUpMove sBraixenLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE(11, MOVE_HOWL),
LEVEL_UP_MOVE(14, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(18, MOVE_PSYBEAM),
LEVEL_UP_MOVE(22, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(27, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(30, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(34, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(41, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(45, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(48, MOVE_PSYCHIC),
LEVEL_UP_MOVE(51, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(54, MOVE_MAGIC_ROOM),
LEVEL_UP_MOVE(56, MOVE_FIRE_BLAST),
LEVEL_UP_END
};

static const struct LevelUpMove sDelphoxLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_MYSTICAL_FIRE),
LEVEL_UP_MOVE( 1, MOVE_MYSTICAL_FIRE),
LEVEL_UP_MOVE( 1, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE( 1, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE( 1, MOVE_SWITCHEROO),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_HOWL),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE(11, MOVE_HOWL),
LEVEL_UP_MOVE(14, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(18, MOVE_PSYBEAM),
LEVEL_UP_MOVE(22, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(27, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(30, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(35, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(43, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(48, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(53, MOVE_PSYCHIC),
LEVEL_UP_MOVE(55, MOVE_MYSTICAL_FIRE),
LEVEL_UP_MOVE(57, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(61, MOVE_MAGIC_ROOM),
LEVEL_UP_MOVE(65, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(73, MOVE_FUTURE_SIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sFroakieLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_BUBBLE),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(10, MOVE_LICK),
LEVEL_UP_MOVE(14, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(18, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(21, MOVE_ROUND),
LEVEL_UP_MOVE(25, MOVE_FLING),
LEVEL_UP_MOVE(29, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(35, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(39, MOVE_BOUNCE),
LEVEL_UP_MOVE(43, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(48, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sFrogadierLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 5, MOVE_BUBBLE),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(10, MOVE_LICK),
LEVEL_UP_MOVE(14, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(19, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(23, MOVE_ROUND),
LEVEL_UP_MOVE(28, MOVE_FLING),
LEVEL_UP_MOVE(33, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(38, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(44, MOVE_BOUNCE),
LEVEL_UP_MOVE(48, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(55, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sGreninjaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_WATER_SHURIKEN),
LEVEL_UP_MOVE( 1, MOVE_WATER_SHURIKEN),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE( 1, MOVE_MAT_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_BUBBLE),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(10, MOVE_LICK),
LEVEL_UP_MOVE(14, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(19, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(23, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(28, MOVE_SPIKES),
LEVEL_UP_MOVE(33, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(42, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(49, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(53, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(55, MOVE_WATER_SHURIKEN),
LEVEL_UP_MOVE(61, MOVE_HAZE),
LEVEL_UP_MOVE(62, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(72, MOVE_NIGHT_SLASH),
LEVEL_UP_END
};

static const struct LevelUpMove sBunnelbyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 3, MOVE_TACKLE),
LEVEL_UP_MOVE( 6, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(10, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(13, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(14, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(18, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(21, MOVE_FLAIL),
LEVEL_UP_MOVE(21, MOVE_BULLDOZE),
LEVEL_UP_MOVE(23, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(25, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(27, MOVE_DIG),
LEVEL_UP_MOVE(31, MOVE_BOUNCE),
LEVEL_UP_MOVE(33, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(40, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(41, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(47, MOVE_FACADE),
LEVEL_UP_END
};

static const struct LevelUpMove sDiggersbyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_ROTOTILLER),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(13, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(13, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(14, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(19, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(22, MOVE_FLAIL),
LEVEL_UP_MOVE(23, MOVE_BULLDOZE),
LEVEL_UP_MOVE(26, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(27, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(31, MOVE_DIG),
LEVEL_UP_MOVE(37, MOVE_BOUNCE),
LEVEL_UP_MOVE(43, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(50, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(51, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(53, MOVE_FACADE),
LEVEL_UP_MOVE(58, MOVE_HAMMER_ARM),
LEVEL_UP_END
};

static const struct LevelUpMove sFletchlingLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(10, MOVE_EMBER),
LEVEL_UP_MOVE(10, MOVE_PECK),
LEVEL_UP_MOVE(15, MOVE_FLAIL),
LEVEL_UP_MOVE(19, MOVE_AGILITY),
LEVEL_UP_MOVE(25, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(28, MOVE_ACROBATICS),
LEVEL_UP_MOVE(29, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(30, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(34, MOVE_ROOST),
LEVEL_UP_MOVE(34, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(39, MOVE_TAILWIND),
LEVEL_UP_MOVE(41, MOVE_ME_FIRST),
LEVEL_UP_MOVE(43, MOVE_STEEL_WING),
LEVEL_UP_MOVE(50, MOVE_FLY),
LEVEL_UP_END
};

static const struct LevelUpMove sFletchinderLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE( 0, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 6, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(10, MOVE_PECK),
LEVEL_UP_MOVE(15, MOVE_FLAIL),
LEVEL_UP_MOVE(17, MOVE_EMBER),
LEVEL_UP_MOVE(21, MOVE_AGILITY),
LEVEL_UP_MOVE(27, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(30, MOVE_ACROBATICS),
LEVEL_UP_MOVE(31, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(36, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(38, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(42, MOVE_ROOST),
LEVEL_UP_MOVE(46, MOVE_TAILWIND),
LEVEL_UP_MOVE(46, MOVE_ME_FIRST),
LEVEL_UP_MOVE(52, MOVE_STEEL_WING),
LEVEL_UP_MOVE(64, MOVE_FLY),
LEVEL_UP_END
};

static const struct LevelUpMove sTalonflameLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 6, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(10, MOVE_PECK),
LEVEL_UP_MOVE(15, MOVE_FLAIL),
LEVEL_UP_MOVE(17, MOVE_EMBER),
LEVEL_UP_MOVE(21, MOVE_AGILITY),
LEVEL_UP_MOVE(27, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(31, MOVE_ACROBATICS),
LEVEL_UP_MOVE(31, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(38, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(39, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(47, MOVE_ROOST),
LEVEL_UP_MOVE(49, MOVE_ME_FIRST),
LEVEL_UP_MOVE(50, MOVE_TAILWIND),
LEVEL_UP_MOVE(57, MOVE_STEEL_WING),
LEVEL_UP_MOVE(74, MOVE_FLY),
LEVEL_UP_MOVE(74, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sScatterbugLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 6, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(15, MOVE_BUG_BITE),
LEVEL_UP_END
};

static const struct LevelUpMove sSpewpaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 9, MOVE_PROTECT),
LEVEL_UP_END
};

static const struct LevelUpMove sVivillonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_POWDER),
LEVEL_UP_MOVE( 1, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE( 1, MOVE_POISON_POWDER),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE( 1, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(12, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(12, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(17, MOVE_PSYBEAM),
LEVEL_UP_MOVE(21, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(25, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(31, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(35, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(41, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(45, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE(50, MOVE_HURRICANE),
LEVEL_UP_MOVE(55, MOVE_POWDER),
LEVEL_UP_END
};

static const struct LevelUpMove sLitleoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE( 8, MOVE_WORK_UP),
LEVEL_UP_MOVE(11, MOVE_HEADBUTT),
LEVEL_UP_MOVE(15, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(20, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(23, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(28, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(33, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(36, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(39, MOVE_CRUNCH),
LEVEL_UP_MOVE(43, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(46, MOVE_INCINERATE),
LEVEL_UP_MOVE(50, MOVE_OVERHEAT),
LEVEL_UP_END
};

static const struct LevelUpMove sPyroarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_WORK_UP),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE( 8, MOVE_WORK_UP),
LEVEL_UP_MOVE(11, MOVE_HEADBUTT),
LEVEL_UP_MOVE(15, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(20, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(23, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(28, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(33, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(38, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(42, MOVE_CRUNCH),
LEVEL_UP_MOVE(48, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(51, MOVE_INCINERATE),
LEVEL_UP_MOVE(57, MOVE_OVERHEAT),
LEVEL_UP_END
};

static const struct LevelUpMove sFlabebeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 6, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(10, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(15, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(20, MOVE_WISH),
LEVEL_UP_MOVE(22, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(24, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE(28, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(33, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(37, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(41, MOVE_MOONBLAST),
LEVEL_UP_MOVE(45, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(48, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sFloetteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 6, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(10, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(15, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(20, MOVE_WISH),
LEVEL_UP_MOVE(25, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(27, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE(33, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(38, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(43, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(46, MOVE_MOONBLAST),
LEVEL_UP_MOVE(51, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(58, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sFlorgesLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE( 1, MOVE_WISH),
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 1, MOVE_FLOWER_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_GRASS_KNOT),
LEVEL_UP_MOVE( 1, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_AROMATHERAPY),
LEVEL_UP_END
};

static const struct LevelUpMove sSkiddoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 7, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 9, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(12, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(20, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(22, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(26, MOVE_BULLDOZE),
LEVEL_UP_MOVE(30, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(34, MOVE_BULK_UP),
LEVEL_UP_MOVE(38, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(42, MOVE_HORN_LEECH),
LEVEL_UP_MOVE(45, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(50, MOVE_MILK_DRINK),
LEVEL_UP_END
};

static const struct LevelUpMove sGogoatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 1, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 1, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 9, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(12, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(20, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(22, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(26, MOVE_BULLDOZE),
LEVEL_UP_MOVE(30, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(34, MOVE_BULK_UP),
LEVEL_UP_MOVE(40, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(47, MOVE_HORN_LEECH),
LEVEL_UP_MOVE(55, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(58, MOVE_MILK_DRINK),
LEVEL_UP_MOVE(60, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(65, MOVE_AERIAL_ACE),
LEVEL_UP_END
};

static const struct LevelUpMove sPanchamLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_ARM_THRUST),
LEVEL_UP_MOVE( 8, MOVE_TAUNT),
LEVEL_UP_MOVE(12, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE(15, MOVE_WORK_UP),
LEVEL_UP_MOVE(15, MOVE_COMET_PUNCH),
LEVEL_UP_MOVE(16, MOVE_LOW_SWEEP),
LEVEL_UP_MOVE(17, MOVE_CIRCLE_THROW),
LEVEL_UP_MOVE(22, MOVE_SLASH),
LEVEL_UP_MOVE(27, MOVE_VITAL_THROW),
LEVEL_UP_MOVE(34, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(35, MOVE_CRUNCH),
LEVEL_UP_MOVE(42, MOVE_PARTING_SHOT),
LEVEL_UP_MOVE(43, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(48, MOVE_SKY_UPPERCUT),
LEVEL_UP_END
};

static const struct LevelUpMove sPangoroLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 0, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_ARM_THRUST),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_LOW_SWEEP),
LEVEL_UP_MOVE( 1, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE( 1, MOVE_WORK_UP),
LEVEL_UP_MOVE( 7, MOVE_ARM_THRUST),
LEVEL_UP_MOVE(12, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE(15, MOVE_WORK_UP),
LEVEL_UP_MOVE(15, MOVE_COMET_PUNCH),
LEVEL_UP_MOVE(17, MOVE_CIRCLE_THROW),
LEVEL_UP_MOVE(22, MOVE_SLASH),
LEVEL_UP_MOVE(27, MOVE_VITAL_THROW),
LEVEL_UP_MOVE(37, MOVE_LOW_SWEEP),
LEVEL_UP_MOVE(37, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(38, MOVE_CRUNCH),
LEVEL_UP_MOVE(46, MOVE_PARTING_SHOT),
LEVEL_UP_MOVE(48, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(52, MOVE_SKY_UPPERCUT),
LEVEL_UP_MOVE(59, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(65, MOVE_TAUNT),
LEVEL_UP_END
};

static const struct LevelUpMove sFurfrouLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(12, MOVE_HEADBUTT),
LEVEL_UP_MOVE(15, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(22, MOVE_BITE),
LEVEL_UP_MOVE(27, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(33, MOVE_RETALIATE),
LEVEL_UP_MOVE(35, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(38, MOVE_CHARM),
LEVEL_UP_MOVE(42, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(48, MOVE_COTTON_GUARD),
LEVEL_UP_END
};

static const struct LevelUpMove sEspurrLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 9, MOVE_CONFUSION),
LEVEL_UP_MOVE(10, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(12, MOVE_COVET),
LEVEL_UP_MOVE(13, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(19, MOVE_PSYBEAM),
LEVEL_UP_MOVE(22, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(29, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(30, MOVE_REFLECT),
LEVEL_UP_END
};

static const struct LevelUpMove sMeowsticLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 9, MOVE_CONFUSION),
LEVEL_UP_MOVE(12, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(12, MOVE_COVET),
LEVEL_UP_MOVE(19, MOVE_PSYBEAM),
LEVEL_UP_MOVE(19, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(20, MOVE_CHARM),
LEVEL_UP_MOVE(22, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(24, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(31, MOVE_MIRACLE_EYE),
LEVEL_UP_MOVE(32, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(34, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(34, MOVE_REFLECT),
LEVEL_UP_MOVE(35, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE(44, MOVE_IMPRISON),
LEVEL_UP_MOVE(47, MOVE_PSYCHIC),
LEVEL_UP_MOVE(50, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(55, MOVE_MISTY_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sHonedgeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 5, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(11, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(12, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(12, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(13, MOVE_PURSUIT),
LEVEL_UP_MOVE(16, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(23, MOVE_SLASH),
LEVEL_UP_MOVE(27, MOVE_RETALIATE),
LEVEL_UP_MOVE(28, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(32, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(38, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(39, MOVE_POWER_TRICK),
LEVEL_UP_MOVE(44, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(47, MOVE_SACRED_SWORD),
LEVEL_UP_END
};

static const struct LevelUpMove sDoubladeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 1, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 5, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(12, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(13, MOVE_PURSUIT),
LEVEL_UP_MOVE(16, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(18, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(20, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(23, MOVE_SLASH),
LEVEL_UP_MOVE(27, MOVE_RETALIATE),
LEVEL_UP_MOVE(29, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(32, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(41, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(42, MOVE_POWER_TRICK),
LEVEL_UP_MOVE(50, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(53, MOVE_SACRED_SWORD),
LEVEL_UP_END
};

static const struct LevelUpMove sAegislashLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_KINGS_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_KINGS_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_HEAD_SMASH),
LEVEL_UP_MOVE( 1, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 1, MOVE_METAL_SOUND),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_RETALIATE),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_POWER_TRICK),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_SACRED_SWORD),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 1, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_END
};

static const struct LevelUpMove sSpritzeeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 4, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 8, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 9, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(14, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(17, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(22, MOVE_ATTRACT),
LEVEL_UP_MOVE(25, MOVE_CALM_MIND),
LEVEL_UP_MOVE(28, MOVE_FLAIL),
LEVEL_UP_MOVE(31, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(32, MOVE_CHARM),
LEVEL_UP_MOVE(33, MOVE_MOONBLAST),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(41, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(50, MOVE_DISARMING_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sAromatisseLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE( 1, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE( 6, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 8, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(13, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(17, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(17, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(22, MOVE_ATTRACT),
LEVEL_UP_MOVE(25, MOVE_CALM_MIND),
LEVEL_UP_MOVE(28, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(28, MOVE_FLAIL),
LEVEL_UP_MOVE(31, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(32, MOVE_CHARM),
LEVEL_UP_MOVE(33, MOVE_MOONBLAST),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(41, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(51, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(57, MOVE_REFLECT),
LEVEL_UP_END
};

static const struct LevelUpMove sSwirlixLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 5, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 5, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(12, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(15, MOVE_ROUND),
LEVEL_UP_MOVE(16, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(20, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(20, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(21, MOVE_STRING_SHOT),
LEVEL_UP_MOVE(30, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(31, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(36, MOVE_WISH),
LEVEL_UP_MOVE(38, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(40, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(58, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(67, MOVE_SAFEGUARD),
LEVEL_UP_END
};

static const struct LevelUpMove sSlurpuffLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 5, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 8, MOVE_PLAY_NICE),
LEVEL_UP_MOVE(12, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(15, MOVE_ROUND),
LEVEL_UP_MOVE(16, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(20, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(20, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE(21, MOVE_STRING_SHOT),
LEVEL_UP_MOVE(30, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(31, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(36, MOVE_WISH),
LEVEL_UP_MOVE(38, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(40, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(42, MOVE_STICKY_WEB),
LEVEL_UP_MOVE(58, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(67, MOVE_SAFEGUARD),
LEVEL_UP_END
};

static const struct LevelUpMove sInkayLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 4, MOVE_REFLECT),
LEVEL_UP_MOVE( 6, MOVE_WRAP),
LEVEL_UP_MOVE( 9, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(13, MOVE_PSYWAVE),
LEVEL_UP_MOVE(15, MOVE_SWAGGER),
LEVEL_UP_MOVE(16, MOVE_PAYBACK),
LEVEL_UP_MOVE(17, MOVE_PSYBEAM),
LEVEL_UP_MOVE(21, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(22, MOVE_PLUCK),
LEVEL_UP_MOVE(26, MOVE_TOPSY_TURVY),
LEVEL_UP_MOVE(27, MOVE_SWITCHEROO),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(31, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(32, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(33, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(42, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sMalamarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_REVERSAL),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 1, MOVE_SUPERPOWER),
LEVEL_UP_MOVE( 1, MOVE_HAPPY_HOUR),
LEVEL_UP_MOVE( 4, MOVE_REFLECT),
LEVEL_UP_MOVE(13, MOVE_PSYWAVE),
LEVEL_UP_MOVE(15, MOVE_SWAGGER),
LEVEL_UP_MOVE(16, MOVE_PAYBACK),
LEVEL_UP_MOVE(17, MOVE_PSYBEAM),
LEVEL_UP_MOVE(18, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(22, MOVE_PLUCK),
LEVEL_UP_MOVE(24, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(28, MOVE_SWITCHEROO),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(30, MOVE_TOPSY_TURVY),
LEVEL_UP_MOVE(31, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(32, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(33, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(47, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sBinacleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 6, MOVE_WATER_GUN),
LEVEL_UP_MOVE(13, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(18, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(20, MOVE_CLAMP),
LEVEL_UP_MOVE(21, MOVE_SLASH),
LEVEL_UP_MOVE(23, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(23, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(24, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(32, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(39, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(40, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(41, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(46, MOVE_CROSS_CHOP),
LEVEL_UP_END
};

static const struct LevelUpMove sBarbaracleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SKULL_BASH),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_STONE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 7, MOVE_WITHDRAW),
LEVEL_UP_MOVE(13, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(18, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(20, MOVE_CLAMP),
LEVEL_UP_MOVE(21, MOVE_SLASH),
LEVEL_UP_MOVE(23, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(23, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(24, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(32, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(41, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(42, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(44, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(51, MOVE_CROSS_CHOP),
LEVEL_UP_MOVE(56, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(65, MOVE_SKULL_BASH),
LEVEL_UP_END
};

static const struct LevelUpMove sSkrelpLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 5, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_ACID),
LEVEL_UP_MOVE(10, MOVE_WATER_GUN),
LEVEL_UP_MOVE(12, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(12, MOVE_BUBBLE),
LEVEL_UP_MOVE(19, MOVE_CAMOUFLAGE),
LEVEL_UP_MOVE(23, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(24, MOVE_POISON_TAIL),
LEVEL_UP_MOVE(27, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(33, MOVE_TOXIC),
LEVEL_UP_MOVE(40, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(43, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(44, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(49, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sDragalgeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_TWISTER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_TWISTER),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE( 1, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(12, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(12, MOVE_BUBBLE),
LEVEL_UP_MOVE(15, MOVE_ACID),
LEVEL_UP_MOVE(19, MOVE_CAMOUFLAGE),
LEVEL_UP_MOVE(23, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(24, MOVE_POISON_TAIL),
LEVEL_UP_MOVE(27, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(33, MOVE_TOXIC),
LEVEL_UP_MOVE(40, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(45, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(45, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(51, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(59, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(66, MOVE_OUTRAGE),
LEVEL_UP_MOVE(67, MOVE_TWISTER),
LEVEL_UP_END
};

static const struct LevelUpMove sClauncherLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 6, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 7, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(12, MOVE_FLAIL),
LEVEL_UP_MOVE(12, MOVE_BUBBLE),
LEVEL_UP_MOVE(20, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(25, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(27, MOVE_AQUA_JET),
LEVEL_UP_MOVE(28, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(30, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(31, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(40, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE(43, MOVE_CRABHAMMER),
LEVEL_UP_MOVE(45, MOVE_BOUNCE),
LEVEL_UP_MOVE(49, MOVE_MUDDY_WATER),
LEVEL_UP_END
};

static const struct LevelUpMove sClawitzerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE( 1, MOVE_DARK_PULSE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 7, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 9, MOVE_VICE_GRIP),
LEVEL_UP_MOVE(12, MOVE_BUBBLE),
LEVEL_UP_MOVE(16, MOVE_FLAIL),
LEVEL_UP_MOVE(20, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(25, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(29, MOVE_AQUA_JET),
LEVEL_UP_MOVE(29, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(30, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(31, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(48, MOVE_CRABHAMMER),
LEVEL_UP_MOVE(49, MOVE_BOUNCE),
LEVEL_UP_MOVE(50, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE(55, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(57, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(63, MOVE_DRAGON_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sHelioptileLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 4, MOVE_POUND),
LEVEL_UP_MOVE( 7, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(13, MOVE_CHARGE),
LEVEL_UP_MOVE(13, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(22, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(26, MOVE_BULLDOZE),
LEVEL_UP_MOVE(26, MOVE_PARABOLIC_CHARGE),
LEVEL_UP_MOVE(31, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE(31, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(41, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(42, MOVE_ELECTRIFY),
LEVEL_UP_MOVE(44, MOVE_THUNDER),
LEVEL_UP_END
};

static const struct LevelUpMove sHelioliskLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE( 1, MOVE_PARABOLIC_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE( 1, MOVE_ELECTRIFY),
LEVEL_UP_MOVE( 1, MOVE_THUNDER),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_WIND),
LEVEL_UP_END
};

static const struct LevelUpMove sTyruntLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_ROAR),
LEVEL_UP_MOVE(12, MOVE_BIDE),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(15, MOVE_CHARM),
LEVEL_UP_MOVE(15, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_STOMP),
LEVEL_UP_MOVE(24, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(28, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(32, MOVE_CRUNCH),
LEVEL_UP_MOVE(36, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(40, MOVE_THRASH),
LEVEL_UP_MOVE(44, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(48, MOVE_HORN_DRILL),
LEVEL_UP_END
};

static const struct LevelUpMove sTyrantrumLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 1, MOVE_HEAD_SMASH),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 6, MOVE_ROAR),
LEVEL_UP_MOVE(12, MOVE_BIDE),
LEVEL_UP_MOVE(15, MOVE_CHARM),
LEVEL_UP_MOVE(15, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_STOMP),
LEVEL_UP_MOVE(24, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(26, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(32, MOVE_CRUNCH),
LEVEL_UP_MOVE(36, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(41, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(42, MOVE_THRASH),
LEVEL_UP_MOVE(47, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(53, MOVE_HORN_DRILL),
LEVEL_UP_MOVE(62, MOVE_HEAD_SMASH),
LEVEL_UP_MOVE(65, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sAmauraLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE(10, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(12, MOVE_ICY_WIND),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(17, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(19, MOVE_MIST),
LEVEL_UP_MOVE(21, MOVE_ENCORE),
LEVEL_UP_MOVE(22, MOVE_ROUND),
LEVEL_UP_MOVE(22, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(34, MOVE_AVALANCHE),
LEVEL_UP_MOVE(35, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(36, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(43, MOVE_HAIL),
LEVEL_UP_MOVE(44, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(45, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(56, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(57, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sAurorusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE( 1, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_AURORA_VEIL),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(10, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(12, MOVE_ICY_WIND),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(17, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(19, MOVE_MIST),
LEVEL_UP_MOVE(22, MOVE_ROUND),
LEVEL_UP_MOVE(22, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(26, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(34, MOVE_AVALANCHE),
LEVEL_UP_MOVE(36, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(46, MOVE_HAIL),
LEVEL_UP_MOVE(46, MOVE_ENCORE),
LEVEL_UP_MOVE(48, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(48, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(49, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(64, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(66, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sSylveonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 0, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 5, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 9, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(11, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(13, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(18, MOVE_SWIFT),
LEVEL_UP_MOVE(25, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(28, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(32, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(33, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(44, MOVE_MOONBLAST),
LEVEL_UP_MOVE(45, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sHawluchaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_DETECT),
LEVEL_UP_MOVE( 4, MOVE_KARATE_CHOP),
LEVEL_UP_MOVE( 5, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_DETECT),
LEVEL_UP_MOVE(13, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(17, MOVE_ENCORE),
LEVEL_UP_MOVE(24, MOVE_SUBMISSION),
LEVEL_UP_MOVE(24, MOVE_FLING),
LEVEL_UP_MOVE(25, MOVE_ROOST),
LEVEL_UP_MOVE(28, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(29, MOVE_BOUNCE),
LEVEL_UP_MOVE(32, MOVE_TAUNT),
LEVEL_UP_MOVE(36, MOVE_FLYING_PRESS),
LEVEL_UP_MOVE(44, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(46, MOVE_HI_JUMP_KICK),
LEVEL_UP_MOVE(48, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(52, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE(55, MOVE_SKY_DROP),
LEVEL_UP_END
};

static const struct LevelUpMove sDedenneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_TACKLE),
LEVEL_UP_MOVE(10, MOVE_CHARGE),
LEVEL_UP_MOVE(11, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(17, MOVE_CHARM),
LEVEL_UP_MOVE(20, MOVE_NUZZLE),
LEVEL_UP_MOVE(21, MOVE_PARABOLIC_CHARGE),
LEVEL_UP_MOVE(23, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(28, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE(32, MOVE_REST),
LEVEL_UP_MOVE(33, MOVE_SNORE),
LEVEL_UP_MOVE(34, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(43, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(44, MOVE_DISCHARGE),
LEVEL_UP_MOVE(47, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(50, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(53, MOVE_THUNDER),
LEVEL_UP_END
};

static const struct LevelUpMove sCarbinkLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 8, MOVE_SHARPEN),
LEVEL_UP_MOVE(10, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(14, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(18, MOVE_REFLECT),
LEVEL_UP_MOVE(23, MOVE_FLAIL),
LEVEL_UP_MOVE(24, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(25, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(35, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(37, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(40, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(43, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(45, MOVE_POWER_GEM),
LEVEL_UP_MOVE(52, MOVE_MOONBLAST),
LEVEL_UP_MOVE(55, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(70, MOVE_SAFEGUARD),
LEVEL_UP_END
};

static const struct LevelUpMove sGoomyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 5, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE(12, MOVE_PROTECT),
LEVEL_UP_MOVE(13, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(13, MOVE_BIDE),
LEVEL_UP_MOVE(23, MOVE_FLAIL),
LEVEL_UP_MOVE(25, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(27, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(38, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(39, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(41, MOVE_CURSE),
LEVEL_UP_MOVE(44, MOVE_MUDDY_WATER),
LEVEL_UP_END
};

static const struct LevelUpMove sSliggooLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 1, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE(12, MOVE_PROTECT),
LEVEL_UP_MOVE(13, MOVE_BIDE),
LEVEL_UP_MOVE(18, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(23, MOVE_FLAIL),
LEVEL_UP_MOVE(25, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(27, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(40, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(41, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(43, MOVE_CURSE),
LEVEL_UP_MOVE(48, MOVE_MUDDY_WATER),
LEVEL_UP_END
};

static const struct LevelUpMove sGoodraLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE( 1, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE( 1, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 1, MOVE_POISON_TAIL),
LEVEL_UP_MOVE( 1, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE(12, MOVE_PROTECT),
LEVEL_UP_MOVE(13, MOVE_BIDE),
LEVEL_UP_MOVE(18, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(23, MOVE_FLAIL),
LEVEL_UP_MOVE(25, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(27, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(40, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(41, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(43, MOVE_CURSE),
LEVEL_UP_MOVE(49, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(50, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(60, MOVE_POWER_WHIP),
LEVEL_UP_MOVE(60, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sKlefkiLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAIRY_LOCK),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 4, MOVE_TACKLE),
LEVEL_UP_MOVE( 6, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 8, MOVE_ASTONISH),
LEVEL_UP_MOVE(15, MOVE_SPIKES),
LEVEL_UP_MOVE(16, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(19, MOVE_CRAFTY_SHIELD),
LEVEL_UP_MOVE(20, MOVE_TORMENT),
LEVEL_UP_MOVE(21, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(33, MOVE_RECYCLE),
LEVEL_UP_MOVE(33, MOVE_IMPRISON),
LEVEL_UP_MOVE(34, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(36, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(38, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(41, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(44, MOVE_MAGIC_ROOM),
LEVEL_UP_MOVE(50, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE(52, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sPhantumpLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 4, MOVE_BRANCH_POKE),
LEVEL_UP_MOVE( 5, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(14, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(16, MOVE_GROWTH),
LEVEL_UP_MOVE(19, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(20, MOVE_HEX),
LEVEL_UP_MOVE(22, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(28, MOVE_INGRAIN),
LEVEL_UP_MOVE(30, MOVE_CURSE),
LEVEL_UP_MOVE(39, MOVE_HORN_LEECH),
LEVEL_UP_MOVE(39, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(44, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(44, MOVE_FORESTS_CURSE),
LEVEL_UP_MOVE(46, MOVE_WOOD_HAMMER),
LEVEL_UP_END
};

static const struct LevelUpMove sTrevenantLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_BRANCH_POKE),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 1, MOVE_HORN_LEECH),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 5, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(16, MOVE_GROWTH),
LEVEL_UP_MOVE(19, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(20, MOVE_HEX),
LEVEL_UP_MOVE(22, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(23, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(28, MOVE_INGRAIN),
LEVEL_UP_MOVE(30, MOVE_CURSE),
LEVEL_UP_MOVE(39, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(41, MOVE_HORN_LEECH),
LEVEL_UP_MOVE(44, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(44, MOVE_FORESTS_CURSE),
LEVEL_UP_MOVE(46, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(55, MOVE_SHADOW_CLAW),
LEVEL_UP_END
};

static const struct LevelUpMove sPumpkabooLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TRICK_OR_TREAT),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_TRICK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 8, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(15, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(15, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(17, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(20, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(22, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(23, MOVE_TRICK_OR_TREAT),
LEVEL_UP_MOVE(36, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(39, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(40, MOVE_TRICK),
LEVEL_UP_MOVE(43, MOVE_PAIN_SPLIT),
LEVEL_UP_END
};

static const struct LevelUpMove sGourgeistLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_EXPLOSION),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_TRICK_OR_TREAT),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE( 1, MOVE_TRICK),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(15, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(17, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(20, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(22, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(28, MOVE_TRICK_OR_TREAT),
LEVEL_UP_MOVE(30, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(39, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(40, MOVE_TRICK),
LEVEL_UP_MOVE(43, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(43, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(51, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(73, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sBergmiteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 3, MOVE_TACKLE),
LEVEL_UP_MOVE( 5, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(11, MOVE_ICY_WIND),
LEVEL_UP_MOVE(14, MOVE_CURSE),
LEVEL_UP_MOVE(15, MOVE_PROTECT),
LEVEL_UP_MOVE(20, MOVE_SHARPEN),
LEVEL_UP_MOVE(21, MOVE_BITE),
LEVEL_UP_MOVE(24, MOVE_ICE_FANG),
LEVEL_UP_MOVE(26, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_AVALANCHE),
LEVEL_UP_MOVE(27, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(30, MOVE_ICE_BALL),
LEVEL_UP_MOVE(33, MOVE_CRUNCH),
LEVEL_UP_MOVE(35, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(37, MOVE_RECOVER),
LEVEL_UP_MOVE(40, MOVE_BLIZZARD),
LEVEL_UP_MOVE(45, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sAvaluggLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_SKULL_BASH),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 5, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(11, MOVE_ICY_WIND),
LEVEL_UP_MOVE(14, MOVE_CURSE),
LEVEL_UP_MOVE(15, MOVE_PROTECT),
LEVEL_UP_MOVE(20, MOVE_SHARPEN),
LEVEL_UP_MOVE(21, MOVE_BITE),
LEVEL_UP_MOVE(24, MOVE_ICE_FANG),
LEVEL_UP_MOVE(26, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(28, MOVE_AVALANCHE),
LEVEL_UP_MOVE(30, MOVE_ICE_BALL),
LEVEL_UP_MOVE(35, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(39, MOVE_RECOVER),
LEVEL_UP_MOVE(43, MOVE_BLIZZARD),
LEVEL_UP_MOVE(47, MOVE_CRUNCH),
LEVEL_UP_MOVE(50, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(54, MOVE_SKULL_BASH),
LEVEL_UP_END
};

static const struct LevelUpMove sNoibatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE( 5, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE( 7, MOVE_GUST),
LEVEL_UP_MOVE( 8, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(12, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(16, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_AGILITY),
LEVEL_UP_MOVE(23, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(31, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(33, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(36, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(36, MOVE_ROOST),
LEVEL_UP_MOVE(40, MOVE_SCREECH),
LEVEL_UP_MOVE(41, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(42, MOVE_TAILWIND),
LEVEL_UP_MOVE(54, MOVE_HURRICANE),
LEVEL_UP_END
};

static const struct LevelUpMove sNoivernLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_MOONLIGHT),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_SUPERSONIC),
LEVEL_UP_MOVE( 1, MOVE_BOOMBURST),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE( 5, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(11, MOVE_GUST),
LEVEL_UP_MOVE(12, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(16, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_AGILITY),
LEVEL_UP_MOVE(23, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(31, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(33, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(36, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(36, MOVE_ROOST),
LEVEL_UP_MOVE(40, MOVE_SCREECH),
LEVEL_UP_MOVE(43, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(43, MOVE_TAILWIND),
LEVEL_UP_MOVE(58, MOVE_HURRICANE),
LEVEL_UP_MOVE(67, MOVE_BOOMBURST),
LEVEL_UP_MOVE(70, MOVE_DRAGON_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sXerneasLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GRAVITY),
LEVEL_UP_MOVE( 1, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE( 1, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE( 1, MOVE_INGRAIN),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 5, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(10, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(18, MOVE_GRAVITY),
LEVEL_UP_MOVE(25, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(33, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(40, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(42, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(42, MOVE_GEOMANCY),
LEVEL_UP_MOVE(43, MOVE_HORN_LEECH),
LEVEL_UP_MOVE(45, MOVE_INGRAIN),
LEVEL_UP_MOVE(48, MOVE_MOONBLAST),
LEVEL_UP_MOVE(50, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(50, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(58, MOVE_MEGAHORN),
LEVEL_UP_MOVE(65, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(77, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(85, MOVE_OUTRAGE),
LEVEL_UP_MOVE(86, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sYveltalLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_HURRICANE),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_ROOST),
LEVEL_UP_MOVE( 5, MOVE_TAUNT),
LEVEL_UP_MOVE( 5, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(13, MOVE_SNARL),
LEVEL_UP_MOVE(23, MOVE_DISABLE),
LEVEL_UP_MOVE(23, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(25, MOVE_TAILWIND),
LEVEL_UP_MOVE(30, MOVE_ROOST),
LEVEL_UP_MOVE(39, MOVE_OBLIVION_WING),
LEVEL_UP_MOVE(41, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(46, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(51, MOVE_PSYCHIC),
LEVEL_UP_MOVE(55, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(56, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(64, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(70, MOVE_HURRICANE),
LEVEL_UP_MOVE(73, MOVE_FOCUS_BLAST),
LEVEL_UP_MOVE(85, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE(86, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sZygardeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THOUSAND_ARROWS),
LEVEL_UP_MOVE( 1, MOVE_THOUSAND_WAVES),
LEVEL_UP_MOVE( 1, MOVE_CORE_ENFORCER),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_GLARE),
LEVEL_UP_MOVE(13, MOVE_DIG),
LEVEL_UP_MOVE(15, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(18, MOVE_BIND),
LEVEL_UP_MOVE(23, MOVE_HAZE),
LEVEL_UP_MOVE(38, MOVE_LANDS_WRATH),
LEVEL_UP_MOVE(40, MOVE_CRUNCH),
LEVEL_UP_MOVE(50, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(51, MOVE_SANDSTORM),
LEVEL_UP_MOVE(56, MOVE_GLARE),
LEVEL_UP_MOVE(59, MOVE_CAMOUFLAGE),
LEVEL_UP_MOVE(68, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(72, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(74, MOVE_COIL),
LEVEL_UP_MOVE(88, MOVE_OUTRAGE),
LEVEL_UP_MOVE(88, MOVE_EXTREME_SPEED),
LEVEL_UP_END
};

static const struct LevelUpMove sDiancieLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 5, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 6, MOVE_SHARPEN),
LEVEL_UP_MOVE(12, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(14, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(15, MOVE_REFLECT),
LEVEL_UP_MOVE(26, MOVE_FLAIL),
LEVEL_UP_MOVE(28, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(35, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(46, MOVE_TRICK_ROOM),
LEVEL_UP_MOVE(47, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(48, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(49, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(49, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(57, MOVE_POWER_GEM),
LEVEL_UP_MOVE(65, MOVE_MOONBLAST),
LEVEL_UP_MOVE(68, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(70, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(72, MOVE_DIAMOND_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sHoopaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HYPERSPACE_HOLE),
LEVEL_UP_MOVE( 1, MOVE_TRICK),
LEVEL_UP_MOVE( 1, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE( 1, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 6, MOVE_ASTONISH),
LEVEL_UP_MOVE(10, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(16, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(17, MOVE_PSYBEAM),
LEVEL_UP_MOVE(25, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(29, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(30, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(38, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(46, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(50, MOVE_WONDER_ROOM),
LEVEL_UP_MOVE(51, MOVE_TRICK_ROOM),
LEVEL_UP_MOVE(59, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(68, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(75, MOVE_PSYCHIC),
LEVEL_UP_MOVE(85, MOVE_HYPERSPACE_HOLE),
LEVEL_UP_END
};

static const struct LevelUpMove sVolcanionLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_STEAM_ERUPTION),
LEVEL_UP_MOVE( 1, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 6, MOVE_LEER),
LEVEL_UP_MOVE(16, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(22, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(24, MOVE_WEATHER_BALL),
LEVEL_UP_MOVE(30, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(35, MOVE_STOMP),
LEVEL_UP_MOVE(36, MOVE_INCINERATE),
LEVEL_UP_MOVE(37, MOVE_MIST),
LEVEL_UP_MOVE(38, MOVE_HAZE),
LEVEL_UP_MOVE(40, MOVE_SCALD),
LEVEL_UP_MOVE(46, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(54, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(58, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(69, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(75, MOVE_OVERHEAT),
LEVEL_UP_MOVE(77, MOVE_STEAM_ERUPTION),
LEVEL_UP_MOVE(83, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sRowletLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 3, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE( 8, MOVE_PECK),
LEVEL_UP_MOVE(12, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(14, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(18, MOVE_FORESIGHT),
LEVEL_UP_MOVE(19, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(21, MOVE_PLUCK),
LEVEL_UP_MOVE(28, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(28, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(29, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(31, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(34, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(37, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sDartrixLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_PECK),
LEVEL_UP_MOVE(11, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(14, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(19, MOVE_FORESIGHT),
LEVEL_UP_MOVE(21, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(24, MOVE_PLUCK),
LEVEL_UP_MOVE(33, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(35, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(35, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(40, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(45, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(50, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sDecidueyeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SPIRIT_SHACKLE),
LEVEL_UP_MOVE( 1, MOVE_SPIRIT_SHACKLE),
LEVEL_UP_MOVE( 1, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE( 1, MOVE_LEAF_STORM),
LEVEL_UP_MOVE( 1, MOVE_U_TURN),
LEVEL_UP_MOVE( 1, MOVE_SPITE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_PECK),
LEVEL_UP_MOVE(11, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(14, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(19, MOVE_FORESIGHT),
LEVEL_UP_MOVE(21, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(24, MOVE_PLUCK),
LEVEL_UP_MOVE(33, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(36, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(37, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(44, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(50, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(57, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sLittenLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 3, MOVE_EMBER),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_LICK),
LEVEL_UP_MOVE(11, MOVE_ROAR),
LEVEL_UP_MOVE(11, MOVE_LEER),
LEVEL_UP_MOVE(15, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(16, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(19, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(26, MOVE_SWAGGER),
LEVEL_UP_MOVE(27, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(31, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(32, MOVE_THRASH),
LEVEL_UP_MOVE(37, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(46, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sTorracatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_LICK),
LEVEL_UP_MOVE(11, MOVE_ROAR),
LEVEL_UP_MOVE(11, MOVE_LEER),
LEVEL_UP_MOVE(16, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_BITE),
LEVEL_UP_MOVE(19, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(22, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(33, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(33, MOVE_SWAGGER),
LEVEL_UP_MOVE(40, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(43, MOVE_THRASH),
LEVEL_UP_MOVE(50, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(55, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sIncineroarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DARKEST_LARIAT),
LEVEL_UP_MOVE( 1, MOVE_DARKEST_LARIAT),
LEVEL_UP_MOVE( 1, MOVE_CROSS_CHOP),
LEVEL_UP_MOVE( 1, MOVE_THROAT_CHOP),
LEVEL_UP_MOVE( 1, MOVE_BULK_UP),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_LICK),
LEVEL_UP_MOVE(11, MOVE_ROAR),
LEVEL_UP_MOVE(11, MOVE_LEER),
LEVEL_UP_MOVE(16, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_BITE),
LEVEL_UP_MOVE(19, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(22, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(31, MOVE_SWAGGER),
LEVEL_UP_MOVE(34, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(44, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(48, MOVE_THRASH),
LEVEL_UP_MOVE(57, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(60, MOVE_OUTRAGE),
LEVEL_UP_MOVE(66, MOVE_CROSS_CHOP),
LEVEL_UP_END
};

static const struct LevelUpMove sPopplioLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 3, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(10, MOVE_AQUA_JET),
LEVEL_UP_MOVE(11, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(15, MOVE_ICY_WIND),
LEVEL_UP_MOVE(19, MOVE_SING),
LEVEL_UP_MOVE(21, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(22, MOVE_ENCORE),
LEVEL_UP_MOVE(29, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(30, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(31, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(33, MOVE_MOONBLAST),
LEVEL_UP_MOVE(37, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(39, MOVE_CAPTIVATE),
LEVEL_UP_END
};

static const struct LevelUpMove sBrionneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(10, MOVE_AQUA_JET),
LEVEL_UP_MOVE(11, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(15, MOVE_ICY_WIND),
LEVEL_UP_MOVE(21, MOVE_SING),
LEVEL_UP_MOVE(24, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(27, MOVE_ENCORE),
LEVEL_UP_MOVE(33, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(39, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(39, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(44, MOVE_MOONBLAST),
LEVEL_UP_MOVE(46, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(50, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sPrimarinaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SPARKLING_ARIA),
LEVEL_UP_MOVE( 1, MOVE_SPARKLING_ARIA),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 9, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(10, MOVE_AQUA_JET),
LEVEL_UP_MOVE(11, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(15, MOVE_ICY_WIND),
LEVEL_UP_MOVE(21, MOVE_SING),
LEVEL_UP_MOVE(24, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(27, MOVE_ENCORE),
LEVEL_UP_MOVE(33, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(42, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(42, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(49, MOVE_MOONBLAST),
LEVEL_UP_MOVE(49, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(57, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sPikipekLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 9, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(13, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(15, MOVE_PLUCK),
LEVEL_UP_MOVE(19, MOVE_ROOST),
LEVEL_UP_MOVE(21, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(25, MOVE_SCREECH),
LEVEL_UP_MOVE(27, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(31, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(33, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(37, MOVE_HYPER_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sTrumbeakLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 9, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(13, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(16, MOVE_PLUCK),
LEVEL_UP_MOVE(21, MOVE_ROOST),
LEVEL_UP_MOVE(24, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(29, MOVE_SCREECH),
LEVEL_UP_MOVE(32, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(37, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(40, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(45, MOVE_HYPER_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sToucannonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BEAK_BLAST),
LEVEL_UP_MOVE( 1, MOVE_BEAK_BLAST),
LEVEL_UP_MOVE( 1, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 9, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(13, MOVE_SUPERSONIC),
LEVEL_UP_MOVE(16, MOVE_PLUCK),
LEVEL_UP_MOVE(21, MOVE_ROOST),
LEVEL_UP_MOVE(24, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(28, MOVE_BEAK_BLAST),
LEVEL_UP_MOVE(30, MOVE_SCREECH),
LEVEL_UP_MOVE(34, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(40, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(44, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(50, MOVE_HYPER_VOICE),
LEVEL_UP_END
};

static const struct LevelUpMove sYungoosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_PURSUIT),
LEVEL_UP_MOVE(10, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(13, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(16, MOVE_BIDE),
LEVEL_UP_MOVE(19, MOVE_BITE),
LEVEL_UP_MOVE(22, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(25, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(31, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(34, MOVE_CRUNCH),
LEVEL_UP_MOVE(37, MOVE_HYPER_FANG),
LEVEL_UP_MOVE(40, MOVE_YAWN),
LEVEL_UP_MOVE(43, MOVE_THRASH),
LEVEL_UP_MOVE(46, MOVE_REST),
LEVEL_UP_END
};

static const struct LevelUpMove sGumshoosLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 3, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_PURSUIT),
LEVEL_UP_MOVE(10, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(13, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(16, MOVE_BIDE),
LEVEL_UP_MOVE(19, MOVE_BITE),
LEVEL_UP_MOVE(23, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(27, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(31, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(35, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(39, MOVE_CRUNCH),
LEVEL_UP_MOVE(43, MOVE_HYPER_FANG),
LEVEL_UP_MOVE(47, MOVE_YAWN),
LEVEL_UP_MOVE(51, MOVE_THRASH),
LEVEL_UP_MOVE(55, MOVE_REST),
LEVEL_UP_END
};

static const struct LevelUpMove sGrubbinLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 4, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 7, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(10, MOVE_BUG_BITE),
LEVEL_UP_MOVE(13, MOVE_BITE),
LEVEL_UP_MOVE(19, MOVE_SPARK),
LEVEL_UP_MOVE(19, MOVE_ACROBATICS),
LEVEL_UP_MOVE(25, MOVE_STICKY_WEB),
LEVEL_UP_MOVE(28, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(32, MOVE_CRUNCH),
LEVEL_UP_MOVE(37, MOVE_DIG),
LEVEL_UP_END
};

static const struct LevelUpMove sCharjabugLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 4, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 7, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(13, MOVE_BITE),
LEVEL_UP_MOVE(13, MOVE_BUG_BITE),
LEVEL_UP_MOVE(19, MOVE_ACROBATICS),
LEVEL_UP_MOVE(21, MOVE_SPARK),
LEVEL_UP_MOVE(29, MOVE_STICKY_WEB),
LEVEL_UP_MOVE(34, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(38, MOVE_CRUNCH),
LEVEL_UP_MOVE(47, MOVE_DIG),
LEVEL_UP_MOVE(55, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(59, MOVE_DISCHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sVikavoltLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE( 1, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_X_SCISSOR),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_DIG),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 4, MOVE_STRING_SHOT),
LEVEL_UP_MOVE( 7, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(13, MOVE_BITE),
LEVEL_UP_MOVE(13, MOVE_BUG_BITE),
LEVEL_UP_MOVE(19, MOVE_ACROBATICS),
LEVEL_UP_MOVE(21, MOVE_SPARK),
LEVEL_UP_MOVE(29, MOVE_STICKY_WEB),
LEVEL_UP_MOVE(34, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(37, MOVE_DIG),
LEVEL_UP_MOVE(38, MOVE_GUILLOTINE),
LEVEL_UP_MOVE(50, MOVE_FLY),
LEVEL_UP_MOVE(55, MOVE_AGILITY),
LEVEL_UP_MOVE(58, MOVE_ZAP_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sCrabrawlerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 5, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE(13, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(22, MOVE_POWER_UP_PUNCH),
LEVEL_UP_MOVE(25, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE(29, MOVE_PAYBACK),
LEVEL_UP_MOVE(33, MOVE_REVERSAL),
LEVEL_UP_MOVE(37, MOVE_CRABHAMMER),
LEVEL_UP_MOVE(42, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(45, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(49, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sCrabominableLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 5, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE(13, MOVE_PURSUIT),
LEVEL_UP_MOVE(17, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(22, MOVE_POWER_UP_PUNCH),
LEVEL_UP_MOVE(25, MOVE_DIZZY_PUNCH),
LEVEL_UP_MOVE(29, MOVE_AVALANCHE),
LEVEL_UP_MOVE(33, MOVE_REVERSAL),
LEVEL_UP_MOVE(37, MOVE_ICE_HAMMER),
LEVEL_UP_MOVE(40, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE(42, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(45, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(49, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sOricorioLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_PECK),
LEVEL_UP_MOVE(10, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(13, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(16, MOVE_BATON_PASS),
LEVEL_UP_MOVE(20, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(23, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(26, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE(30, MOVE_ROOST),
LEVEL_UP_MOVE(33, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(36, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(40, MOVE_REVELATION_DANCE),
LEVEL_UP_MOVE(43, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(46, MOVE_AGILITY),
LEVEL_UP_MOVE(50, MOVE_HURRICANE),
LEVEL_UP_END
};

static const struct LevelUpMove sCutieflyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 4, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 6, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(13, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(14, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(17, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(20, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(31, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(36, MOVE_SWITCHEROO),
LEVEL_UP_MOVE(39, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(43, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(51, MOVE_QUIVER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sRibombeeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_POLLEN_PUFF),
LEVEL_UP_MOVE( 1, MOVE_POLLEN_PUFF),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE( 4, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 7, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(13, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(17, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(20, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE(21, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(34, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(40, MOVE_SWITCHEROO),
LEVEL_UP_MOVE(45, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(49, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(60, MOVE_QUIVER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sRockruffLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(15, MOVE_HOWL),
LEVEL_UP_MOVE(17, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(23, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(27, MOVE_ROAR),
LEVEL_UP_MOVE(32, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(36, MOVE_CRUNCH),
LEVEL_UP_MOVE(39, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(40, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(45, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE(48, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sLycanrocLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_ACCELEROCK),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ACCELEROCK),
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(15, MOVE_HOWL),
LEVEL_UP_MOVE(17, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(23, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(29, MOVE_ROAR),
LEVEL_UP_MOVE(35, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(41, MOVE_CRUNCH),
LEVEL_UP_MOVE(45, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(45, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE(48, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(57, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sWishiwashiLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 9, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(12, MOVE_BRINE),
LEVEL_UP_MOVE(13, MOVE_BEAT_UP),
LEVEL_UP_MOVE(17, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE(22, MOVE_DIVE),
LEVEL_UP_MOVE(25, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(28, MOVE_SOAK),
LEVEL_UP_MOVE(28, MOVE_UPROAR),
LEVEL_UP_MOVE(31, MOVE_AQUA_RING),
LEVEL_UP_MOVE(33, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(42, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(46, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(46, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sMareanieLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 5, MOVE_PECK),
LEVEL_UP_MOVE( 7, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(22, MOVE_RECOVER),
LEVEL_UP_MOVE(26, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(29, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(29, MOVE_SPIKE_CANNON),
LEVEL_UP_MOVE(38, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(40, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(43, MOVE_POISON_JAB),
LEVEL_UP_MOVE(43, MOVE_TOXIC),
LEVEL_UP_END
};

static const struct LevelUpMove sToxapexLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BANEFUL_BUNKER),
LEVEL_UP_MOVE( 1, MOVE_BANEFUL_BUNKER),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE( 5, MOVE_PECK),
LEVEL_UP_MOVE( 9, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(17, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(22, MOVE_RECOVER),
LEVEL_UP_MOVE(26, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(29, MOVE_SPIKE_CANNON),
LEVEL_UP_MOVE(30, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(40, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(42, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(46, MOVE_POISON_JAB),
LEVEL_UP_MOVE(48, MOVE_TOXIC),
LEVEL_UP_END
};

static const struct LevelUpMove sMudbrayLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 3, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 8, MOVE_ROTOTILLER),
LEVEL_UP_MOVE( 9, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 9, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(11, MOVE_BULLDOZE),
LEVEL_UP_MOVE(16, MOVE_STOMP),
LEVEL_UP_MOVE(20, MOVE_STRENGTH),
LEVEL_UP_MOVE(22, MOVE_BIDE),
LEVEL_UP_MOVE(26, MOVE_COUNTER),
LEVEL_UP_MOVE(27, MOVE_HIGH_HORSEPOWER),
LEVEL_UP_MOVE(31, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(36, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(40, MOVE_MEGA_KICK),
LEVEL_UP_MOVE(44, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sMudsdaleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_ROTOTILLER),
LEVEL_UP_MOVE( 1, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 3, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 8, MOVE_ROTOTILLER),
LEVEL_UP_MOVE(11, MOVE_BULLDOZE),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(16, MOVE_STOMP),
LEVEL_UP_MOVE(20, MOVE_STRENGTH),
LEVEL_UP_MOVE(22, MOVE_BIDE),
LEVEL_UP_MOVE(27, MOVE_HIGH_HORSEPOWER),
LEVEL_UP_MOVE(28, MOVE_COUNTER),
LEVEL_UP_MOVE(29, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(34, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(41, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(48, MOVE_MEGA_KICK),
LEVEL_UP_MOVE(53, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sDewpiderLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_INFESTATION),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 5, MOVE_INFESTATION),
LEVEL_UP_MOVE( 6, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 8, MOVE_SPIDER_WEB),
LEVEL_UP_MOVE(10, MOVE_BITE),
LEVEL_UP_MOVE(12, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(17, MOVE_AQUA_RING),
LEVEL_UP_MOVE(20, MOVE_HEADBUTT),
LEVEL_UP_MOVE(25, MOVE_CRUNCH),
LEVEL_UP_MOVE(28, MOVE_SOAK),
LEVEL_UP_MOVE(35, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(36, MOVE_LUNGE),
LEVEL_UP_MOVE(40, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(41, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(46, MOVE_MIRROR_COAT),
LEVEL_UP_END
};

static const struct LevelUpMove sAraquanidLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_INFESTATION),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_SOAK),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_SPIDER_WEB),
LEVEL_UP_MOVE( 5, MOVE_INFESTATION),
LEVEL_UP_MOVE( 8, MOVE_SPIDER_WEB),
LEVEL_UP_MOVE(12, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(13, MOVE_BUG_BITE),
LEVEL_UP_MOVE(18, MOVE_AQUA_RING),
LEVEL_UP_MOVE(20, MOVE_HEADBUTT),
LEVEL_UP_MOVE(21, MOVE_BITE),
LEVEL_UP_MOVE(28, MOVE_CRUNCH),
LEVEL_UP_MOVE(32, MOVE_SOAK),
LEVEL_UP_MOVE(43, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE(44, MOVE_LUNGE),
LEVEL_UP_MOVE(50, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(51, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(59, MOVE_MIRROR_COAT),
LEVEL_UP_END
};

static const struct LevelUpMove sFomantisLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 5, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 7, MOVE_GROWTH),
LEVEL_UP_MOVE(12, MOVE_INGRAIN),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(23, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(30, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(33, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(36, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(45, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(47, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sLurantisLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE( 1, MOVE_DUAL_CHOP),
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_INGRAIN),
LEVEL_UP_MOVE( 1, MOVE_X_SCISSOR),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 5, MOVE_LEAFAGE),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(14, MOVE_GROWTH),
LEVEL_UP_MOVE(19, MOVE_INGRAIN),
LEVEL_UP_MOVE(24, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(30, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(34, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(39, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(51, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE(59, MOVE_SOLAR_BLADE),
LEVEL_UP_END
};

static const struct LevelUpMove sMorelullLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 4, MOVE_ASTONISH),
LEVEL_UP_MOVE( 8, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 8, MOVE_FLASH),
LEVEL_UP_MOVE(11, MOVE_INGRAIN),
LEVEL_UP_MOVE(12, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(16, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(17, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(26, MOVE_STRENGTH_SAP),
LEVEL_UP_MOVE(28, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(32, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(36, MOVE_SPORE),
LEVEL_UP_MOVE(39, MOVE_MOONBLAST),
LEVEL_UP_MOVE(43, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(46, MOVE_SPOTLIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sShiinoticLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_INGRAIN),
LEVEL_UP_MOVE( 1, MOVE_FLASH),
LEVEL_UP_MOVE( 4, MOVE_ASTONISH),
LEVEL_UP_MOVE( 8, MOVE_FLASH),
LEVEL_UP_MOVE(12, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(16, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE(17, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(22, MOVE_INGRAIN),
LEVEL_UP_MOVE(26, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(28, MOVE_STRENGTH_SAP),
LEVEL_UP_MOVE(31, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(38, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(43, MOVE_SPORE),
LEVEL_UP_MOVE(48, MOVE_MOONBLAST),
LEVEL_UP_MOVE(53, MOVE_SPOTLIGHT),
LEVEL_UP_MOVE(54, MOVE_DREAM_EATER),
LEVEL_UP_END
};

static const struct LevelUpMove sSalanditLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 7, MOVE_SMOG),
LEVEL_UP_MOVE( 8, MOVE_EMBER),
LEVEL_UP_MOVE(13, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(15, MOVE_POISON_FANG),
LEVEL_UP_MOVE(17, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(21, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(24, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(26, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(30, MOVE_INCINERATE),
LEVEL_UP_MOVE(35, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(41, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(45, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(47, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(49, MOVE_TOXIC),
LEVEL_UP_MOVE(60, MOVE_ENDEAVOR),
LEVEL_UP_END
};

static const struct LevelUpMove sSalazzleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FIRE_LASH),
LEVEL_UP_MOVE( 0, MOVE_CAPTIVATE),
LEVEL_UP_MOVE( 1, MOVE_FIRE_LASH),
LEVEL_UP_MOVE( 1, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_TORMENT),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_ENDEAVOR),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_CAPTIVATE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 5, MOVE_EMBER),
LEVEL_UP_MOVE(13, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(15, MOVE_POISON_FANG),
LEVEL_UP_MOVE(16, MOVE_SMOG),
LEVEL_UP_MOVE(17, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(21, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE(24, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(26, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(30, MOVE_INCINERATE),
LEVEL_UP_MOVE(37, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(46, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(51, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(54, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(56, MOVE_TOXIC),
LEVEL_UP_END
};

static const struct LevelUpMove sStuffulLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 5, MOVE_BIDE),
LEVEL_UP_MOVE(11, MOVE_PAYBACK),
LEVEL_UP_MOVE(12, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(16, MOVE_ENDURE),
LEVEL_UP_MOVE(20, MOVE_STRENGTH),
LEVEL_UP_MOVE(24, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(25, MOVE_FLAIL),
LEVEL_UP_MOVE(32, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(36, MOVE_THRASH),
LEVEL_UP_MOVE(40, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(44, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(48, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sBewearLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 1, MOVE_PAYBACK),
LEVEL_UP_MOVE( 5, MOVE_BIDE),
LEVEL_UP_MOVE(10, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(12, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(16, MOVE_ENDURE),
LEVEL_UP_MOVE(20, MOVE_STRENGTH),
LEVEL_UP_MOVE(23, MOVE_PAYBACK),
LEVEL_UP_MOVE(25, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_FLAIL),
LEVEL_UP_MOVE(36, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(40, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE(42, MOVE_THRASH),
LEVEL_UP_MOVE(48, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(54, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(60, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sBounsweetLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 4, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 8, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(12, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(20, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(25, MOVE_FLAIL),
LEVEL_UP_MOVE(27, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE(32, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE(36, MOVE_AROMATHERAPY),
LEVEL_UP_END
};

static const struct LevelUpMove sSteeneeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE( 5, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 9, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(21, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(28, MOVE_STOMP),
LEVEL_UP_MOVE(31, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE(37, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(38, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE(44, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(50, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sTsareenaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_TROP_KICK),
LEVEL_UP_MOVE( 1, MOVE_TROP_KICK),
LEVEL_UP_MOVE( 1, MOVE_POWER_WHIP),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 1, MOVE_PUNISHMENT),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_SLAP),
LEVEL_UP_MOVE( 5, MOVE_SWAGGER),
LEVEL_UP_MOVE( 9, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(13, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(21, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(28, MOVE_STOMP),
LEVEL_UP_MOVE(31, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE(37, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(38, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE(44, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(50, MOVE_LEAF_STORM),
LEVEL_UP_MOVE(53, MOVE_POWER_WHIP),
LEVEL_UP_MOVE(55, MOVE_HI_JUMP_KICK),
LEVEL_UP_END
};

static const struct LevelUpMove sComfeyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_FLOWER_SHIELD),
LEVEL_UP_MOVE( 3, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 6, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 8, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(12, MOVE_FLOWER_SHIELD),
LEVEL_UP_MOVE(13, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(13, MOVE_GROWTH),
LEVEL_UP_MOVE(16, MOVE_WRAP),
LEVEL_UP_MOVE(17, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(20, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(22, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(25, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(26, MOVE_GRASS_KNOT),
LEVEL_UP_MOVE(31, MOVE_FLORAL_HEALING),
LEVEL_UP_MOVE(31, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(37, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(39, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(41, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(43, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(47, MOVE_GRASSY_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sOranguruLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 4, MOVE_AFTER_YOU),
LEVEL_UP_MOVE( 8, MOVE_TAUNT),
LEVEL_UP_MOVE(15, MOVE_STORED_POWER),
LEVEL_UP_MOVE(16, MOVE_CALM_MIND),
LEVEL_UP_MOVE(19, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(21, MOVE_QUASH),
LEVEL_UP_MOVE(22, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(28, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(33, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(42, MOVE_TRICK_ROOM),
LEVEL_UP_MOVE(44, MOVE_PSYCHIC),
LEVEL_UP_MOVE(45, MOVE_INSTRUCT),
LEVEL_UP_MOVE(50, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(56, MOVE_FUTURE_SIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sPassimianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 4, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(10, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(15, MOVE_BEAT_UP),
LEVEL_UP_MOVE(19, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(24, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(25, MOVE_BESTOW),
LEVEL_UP_MOVE(32, MOVE_FLING),
LEVEL_UP_MOVE(34, MOVE_BULK_UP),
LEVEL_UP_MOVE(37, MOVE_THRASH),
LEVEL_UP_MOVE(42, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(48, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(52, MOVE_REVERSAL),
LEVEL_UP_MOVE(57, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sWimpodLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_END
};

static const struct LevelUpMove sGolisopodLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FIRST_IMPRESSION),
LEVEL_UP_MOVE( 1, MOVE_FIRST_IMPRESSION),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_SPITE),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 4, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 7, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(12, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(13, MOVE_SPITE),
LEVEL_UP_MOVE(14, MOVE_BUG_BITE),
LEVEL_UP_MOVE(23, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(25, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(30, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(34, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(37, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(44, MOVE_LIQUIDATION),
LEVEL_UP_END
};

static const struct LevelUpMove sSandygastLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_ASTONISH),
LEVEL_UP_MOVE(10, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(15, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(17, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(24, MOVE_BULLDOZE),
LEVEL_UP_MOVE(29, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(35, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(38, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(44, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(48, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(53, MOVE_SHORE_UP),
LEVEL_UP_MOVE(58, MOVE_SANDSTORM),
LEVEL_UP_END
};

static const struct LevelUpMove sPalossandLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_ASTONISH),
LEVEL_UP_MOVE(14, MOVE_SAND_TOMB),
LEVEL_UP_MOVE(15, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(17, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(24, MOVE_BULLDOZE),
LEVEL_UP_MOVE(29, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(35, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(38, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(45, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(52, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(59, MOVE_SHORE_UP),
LEVEL_UP_MOVE(66, MOVE_SANDSTORM),
LEVEL_UP_END
};

static const struct LevelUpMove sPyukumukuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 1, MOVE_MUD_SPORT),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 5, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 9, MOVE_TAUNT),
LEVEL_UP_MOVE(14, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(19, MOVE_COUNTER),
LEVEL_UP_MOVE(24, MOVE_PURIFY),
LEVEL_UP_MOVE(28, MOVE_CURSE),
LEVEL_UP_MOVE(33, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(38, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(43, MOVE_RECOVER),
LEVEL_UP_MOVE(47, MOVE_SOAK),
LEVEL_UP_MOVE(52, MOVE_TOXIC),
LEVEL_UP_MOVE(57, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sTypeNullLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 5, MOVE_RAGE),
LEVEL_UP_MOVE( 8, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(10, MOVE_PURSUIT),
LEVEL_UP_MOVE(14, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(15, MOVE_IMPRISON),
LEVEL_UP_MOVE(24, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(25, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(25, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(36, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(38, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(44, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE(46, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(47, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(60, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(65, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(70, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(85, MOVE_HEAL_BLOCK),
LEVEL_UP_END
};

static const struct LevelUpMove sSilvallyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_MULTI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_MULTI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_EXPLOSION),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_POISON_FANG),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 1, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_HEAL_BLOCK),
LEVEL_UP_MOVE( 5, MOVE_RAGE),
LEVEL_UP_MOVE(10, MOVE_PURSUIT),
LEVEL_UP_MOVE(15, MOVE_BITE),
LEVEL_UP_MOVE(20, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(24, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(25, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(25, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(30, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(36, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(38, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(44, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE(46, MOVE_CRUNCH),
LEVEL_UP_MOVE(47, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(60, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(65, MOVE_PARTING_SHOT),
LEVEL_UP_MOVE(65, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(70, MOVE_RAZOR_WIND),
LEVEL_UP_END
};

static const struct LevelUpMove sMiniorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 8, MOVE_ROLLOUT),
LEVEL_UP_MOVE(10, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(15, MOVE_SWIFT),
LEVEL_UP_MOVE(17, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(22, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(24, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(29, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(31, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(36, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(38, MOVE_POWER_GEM),
LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(45, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(50, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sKomalaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 6, MOVE_STOCKPILE),
LEVEL_UP_MOVE( 6, MOVE_SPIT_UP),
LEVEL_UP_MOVE( 6, MOVE_SWALLOW),
LEVEL_UP_MOVE(11, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(16, MOVE_YAWN),
LEVEL_UP_MOVE(21, MOVE_SLAM),
LEVEL_UP_MOVE(26, MOVE_FLAIL),
LEVEL_UP_MOVE(31, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(36, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(41, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(46, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sTurtonatorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 4, MOVE_EMBER),
LEVEL_UP_MOVE( 5, MOVE_SMOG),
LEVEL_UP_MOVE( 8, MOVE_PROTECT),
LEVEL_UP_MOVE(14, MOVE_ENDURE),
LEVEL_UP_MOVE(16, MOVE_FLAIL),
LEVEL_UP_MOVE(18, MOVE_INCINERATE),
LEVEL_UP_MOVE(24, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(30, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(32, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(34, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(41, MOVE_SHELL_TRAP),
LEVEL_UP_MOVE(42, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(48, MOVE_OVERHEAT),
LEVEL_UP_MOVE(52, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sTogedemaruLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 5, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 9, MOVE_ROLLOUT),
LEVEL_UP_MOVE(10, MOVE_CHARGE),
LEVEL_UP_MOVE(15, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(21, MOVE_NUZZLE),
LEVEL_UP_MOVE(23, MOVE_SPARK),
LEVEL_UP_MOVE(27, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(32, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(33, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(38, MOVE_ZING_ZAP),
LEVEL_UP_MOVE(41, MOVE_DISCHARGE),
LEVEL_UP_MOVE(47, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE(51, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(57, MOVE_SPIKY_SHIELD),
LEVEL_UP_END
};

static const struct LevelUpMove sMimikyuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 7, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(10, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(16, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(22, MOVE_MIMIC),
LEVEL_UP_MOVE(23, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(32, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(35, MOVE_SLASH),
LEVEL_UP_MOVE(40, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE(43, MOVE_CHARM),
LEVEL_UP_MOVE(52, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(57, MOVE_PAIN_SPLIT),
LEVEL_UP_END
};

static const struct LevelUpMove sBruxishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 4, MOVE_ASTONISH),
LEVEL_UP_MOVE( 9, MOVE_CONFUSION),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(17, MOVE_AQUA_JET),
LEVEL_UP_MOVE(20, MOVE_DISABLE),
LEVEL_UP_MOVE(25, MOVE_PSYWAVE),
LEVEL_UP_MOVE(28, MOVE_CRUNCH),
LEVEL_UP_MOVE(33, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(36, MOVE_SCREECH),
LEVEL_UP_MOVE(41, MOVE_PSYCHIC_FANGS),
LEVEL_UP_MOVE(44, MOVE_SYNCHRONOISE),
LEVEL_UP_END
};

static const struct LevelUpMove sDrampaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE( 5, MOVE_TWISTER),
LEVEL_UP_MOVE( 9, MOVE_PROTECT),
LEVEL_UP_MOVE(14, MOVE_GLARE),
LEVEL_UP_MOVE(21, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(22, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(25, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(25, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(31, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(34, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(36, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(45, MOVE_FLY),
LEVEL_UP_MOVE(49, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(54, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sDhelmiseLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_SWITCHEROO),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 4, MOVE_ASTONISH),
LEVEL_UP_MOVE( 8, MOVE_WRAP),
LEVEL_UP_MOVE(10, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(16, MOVE_GROWTH),
LEVEL_UP_MOVE(18, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(24, MOVE_SWITCHEROO),
LEVEL_UP_MOVE(26, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(30, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(39, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(41, MOVE_SLAM),
LEVEL_UP_MOVE(41, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(42, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(47, MOVE_ANCHOR_SHOT),
LEVEL_UP_MOVE(52, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(58, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(62, MOVE_POWER_WHIP),
LEVEL_UP_END
};

static const struct LevelUpMove sJangmoOLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 6, MOVE_PROTECT),
LEVEL_UP_MOVE( 9, MOVE_BIDE),
LEVEL_UP_MOVE(10, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(14, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(18, MOVE_HEADBUTT),
LEVEL_UP_MOVE(22, MOVE_WORK_UP),
LEVEL_UP_MOVE(26, MOVE_SCREECH),
LEVEL_UP_MOVE(30, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(34, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(38, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(42, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(46, MOVE_OUTRAGE),
LEVEL_UP_END
};

static const struct LevelUpMove sHakamoOLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SKY_UPPERCUT),
LEVEL_UP_MOVE( 1, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE( 1, MOVE_SKY_UPPERCUT),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 9, MOVE_BIDE),
LEVEL_UP_MOVE(13, MOVE_PROTECT),
LEVEL_UP_MOVE(14, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(17, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(18, MOVE_HEADBUTT),
LEVEL_UP_MOVE(22, MOVE_WORK_UP),
LEVEL_UP_MOVE(26, MOVE_SCREECH),
LEVEL_UP_MOVE(30, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(34, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(40, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(46, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(51, MOVE_OUTRAGE),
LEVEL_UP_MOVE(57, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sKommoOLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CLANGING_SCALES),
LEVEL_UP_MOVE( 1, MOVE_CLANGING_SCALES),
LEVEL_UP_MOVE( 1, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE( 1, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE( 1, MOVE_SKY_UPPERCUT),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 9, MOVE_BIDE),
LEVEL_UP_MOVE(13, MOVE_PROTECT),
LEVEL_UP_MOVE(14, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(17, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(18, MOVE_HEADBUTT),
LEVEL_UP_MOVE(22, MOVE_WORK_UP),
LEVEL_UP_MOVE(26, MOVE_SCREECH),
LEVEL_UP_MOVE(30, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(34, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(40, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(47, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(55, MOVE_OUTRAGE),
LEVEL_UP_MOVE(63, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(68, MOVE_CLANGOROUS_SOUL),
LEVEL_UP_MOVE(76, MOVE_BOOMBURST),
LEVEL_UP_END
};

static const struct LevelUpMove sTapuKokoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE( 1, MOVE_POWER_SWAP),
LEVEL_UP_MOVE( 1, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 5, MOVE_WITHDRAW),
LEVEL_UP_MOVE(10, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(15, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(17, MOVE_SPARK),
LEVEL_UP_MOVE(22, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(29, MOVE_CHARGE),
LEVEL_UP_MOVE(35, MOVE_SCREECH),
LEVEL_UP_MOVE(38, MOVE_MIRROR_MOVE),
LEVEL_UP_MOVE(39, MOVE_AGILITY),
LEVEL_UP_MOVE(45, MOVE_DISCHARGE),
LEVEL_UP_MOVE(50, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(52, MOVE_NATURES_MADNESS),
LEVEL_UP_MOVE(53, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(58, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(65, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(70, MOVE_POWER_SWAP),
LEVEL_UP_MOVE(75, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sTapuLeleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_PSYCHIC_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE( 1, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE( 1, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE( 1, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 5, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 8, MOVE_PSYWAVE),
LEVEL_UP_MOVE(10, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(15, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(18, MOVE_PSYBEAM),
LEVEL_UP_MOVE(30, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE(31, MOVE_FLATTER),
LEVEL_UP_MOVE(31, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(41, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(42, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(50, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(52, MOVE_NATURES_MADNESS),
LEVEL_UP_MOVE(58, MOVE_TICKLE),
LEVEL_UP_MOVE(59, MOVE_MOONBLAST),
LEVEL_UP_MOVE(60, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(75, MOVE_PSYCHIC_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sTapuBuluLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE( 1, MOVE_SUPERPOWER),
LEVEL_UP_MOVE( 1, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_WHIRLWIND),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 5, MOVE_WITHDRAW),
LEVEL_UP_MOVE(10, MOVE_DISABLE),
LEVEL_UP_MOVE(14, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(17, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(20, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(25, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(25, MOVE_HORN_ATTACK),
LEVEL_UP_MOVE(31, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(38, MOVE_HORN_LEECH),
LEVEL_UP_MOVE(38, MOVE_ROTOTILLER),
LEVEL_UP_MOVE(45, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(50, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(52, MOVE_NATURES_MADNESS),
LEVEL_UP_MOVE(60, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(62, MOVE_MEGAHORN),
LEVEL_UP_MOVE(67, MOVE_SKULL_BASH),
LEVEL_UP_MOVE(75, MOVE_GRASSY_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sTapuFiniLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE( 1, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 5, MOVE_WITHDRAW),
LEVEL_UP_MOVE(10, MOVE_MIST),
LEVEL_UP_MOVE(10, MOVE_HAZE),
LEVEL_UP_MOVE(14, MOVE_WHIRLPOOL),
LEVEL_UP_MOVE(17, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(23, MOVE_AQUA_RING),
LEVEL_UP_MOVE(26, MOVE_BRINE),
LEVEL_UP_MOVE(26, MOVE_REFRESH),
LEVEL_UP_MOVE(31, MOVE_DEFOG),
LEVEL_UP_MOVE(35, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(40, MOVE_SURF),
LEVEL_UP_MOVE(45, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(50, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(52, MOVE_NATURES_MADNESS),
LEVEL_UP_MOVE(58, MOVE_SOAK),
LEVEL_UP_MOVE(60, MOVE_MOONBLAST),
LEVEL_UP_MOVE(63, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(75, MOVE_MISTY_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sCosmogLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SPLASH),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE(23, MOVE_TELEPORT),
LEVEL_UP_END
};

static const struct LevelUpMove sCosmoemLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE( 1, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_END
};

static const struct LevelUpMove sSolgaleoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SUNSTEEL_STRIKE),
LEVEL_UP_MOVE( 1, MOVE_SUNSTEEL_STRIKE),
LEVEL_UP_MOVE( 1, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_WAKE_UP_SLAP),
LEVEL_UP_MOVE( 7, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(13, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(20, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(26, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(34, MOVE_MORNING_SUN),
LEVEL_UP_MOVE(40, MOVE_CRUNCH),
LEVEL_UP_MOVE(47, MOVE_METAL_BURST),
LEVEL_UP_MOVE(56, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(59, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(59, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(67, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(74, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(81, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sLunalaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_MOONGEIST_BEAM),
LEVEL_UP_MOVE( 1, MOVE_MOONGEIST_BEAM),
LEVEL_UP_MOVE( 1, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE( 1, MOVE_TELEPORT),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 7, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(13, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(20, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(26, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(34, MOVE_MOONLIGHT),
LEVEL_UP_MOVE(40, MOVE_NIGHT_DAZE),
LEVEL_UP_MOVE(47, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(53, MOVE_MOONBLAST),
LEVEL_UP_MOVE(62, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(67, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(74, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(81, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sNihilegoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE( 1, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE( 1, MOVE_TICKLE),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_CONSTRICT),
LEVEL_UP_MOVE( 5, MOVE_ACID),
LEVEL_UP_MOVE(10, MOVE_TICKLE),
LEVEL_UP_MOVE(13, MOVE_PSYWAVE),
LEVEL_UP_MOVE(17, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(22, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(25, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(25, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(28, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(31, MOVE_HEADBUTT),
LEVEL_UP_MOVE(31, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(37, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(46, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(47, MOVE_POWER_GEM),
LEVEL_UP_MOVE(55, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(56, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(65, MOVE_WONDER_ROOM),
LEVEL_UP_MOVE(70, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sBuzzwoleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWER_UP_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_FELL_STINGER),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_REVERSAL),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 7, MOVE_COMET_PUNCH),
LEVEL_UP_MOVE(10, MOVE_TAUNT),
LEVEL_UP_MOVE(10, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(15, MOVE_VITAL_THROW),
LEVEL_UP_MOVE(18, MOVE_BULK_UP),
LEVEL_UP_MOVE(24, MOVE_ENDURE),
LEVEL_UP_MOVE(29, MOVE_LEECH_LIFE),
LEVEL_UP_MOVE(30, MOVE_REVERSAL),
LEVEL_UP_MOVE(35, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE(42, MOVE_LUNGE),
LEVEL_UP_MOVE(45, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(52, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(52, MOVE_COUNTER),
LEVEL_UP_MOVE(57, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(65, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(70, MOVE_FOCUS_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sPheromosaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 1, MOVE_LOW_KICK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_SWIFT),
LEVEL_UP_MOVE(10, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(15, MOVE_BUG_BITE),
LEVEL_UP_MOVE(19, MOVE_FEINT),
LEVEL_UP_MOVE(20, MOVE_LOW_KICK),
LEVEL_UP_MOVE(23, MOVE_SILVER_WIND),
LEVEL_UP_MOVE(25, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(30, MOVE_STOMP),
LEVEL_UP_MOVE(31, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(32, MOVE_TRIPLE_KICK),
LEVEL_UP_MOVE(39, MOVE_AGILITY),
LEVEL_UP_MOVE(45, MOVE_LUNGE),
LEVEL_UP_MOVE(45, MOVE_BOUNCE),
LEVEL_UP_MOVE(58, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(59, MOVE_SPEED_SWAP),
LEVEL_UP_MOVE(59, MOVE_ME_FIRST),
LEVEL_UP_MOVE(65, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE(69, MOVE_HI_JUMP_KICK),
LEVEL_UP_END
};

static const struct LevelUpMove sXurkitreeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_GLOW),
LEVEL_UP_MOVE( 1, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 5, MOVE_CHARGE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(15, MOVE_INGRAIN),
LEVEL_UP_MOVE(20, MOVE_SPARK),
LEVEL_UP_MOVE(22, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(31, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(32, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(33, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE(36, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE(45, MOVE_DISCHARGE),
LEVEL_UP_MOVE(50, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(50, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(58, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE(63, MOVE_POWER_WHIP),
LEVEL_UP_MOVE(67, MOVE_ION_DELUGE),
LEVEL_UP_MOVE(70, MOVE_ZAP_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sCelesteelaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_INGRAIN),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_HARDEN),
LEVEL_UP_MOVE(10, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(14, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(17, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(25, MOVE_INGRAIN),
LEVEL_UP_MOVE(29, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(32, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(34, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(39, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(40, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(46, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(47, MOVE_SEED_BOMB),
LEVEL_UP_MOVE(52, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(61, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(66, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(66, MOVE_SKULL_BASH),
LEVEL_UP_END
};

static const struct LevelUpMove sKartanaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_VACUUM_WAVE),
LEVEL_UP_MOVE( 1, MOVE_SACRED_SWORD),
LEVEL_UP_MOVE( 1, MOVE_DEFOG),
LEVEL_UP_MOVE( 1, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_CUT),
LEVEL_UP_MOVE( 6, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE( 9, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(15, MOVE_CUT),
LEVEL_UP_MOVE(20, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE(24, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(34, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(35, MOVE_DETECT),
LEVEL_UP_MOVE(35, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(41, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(47, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(50, MOVE_DEFOG),
LEVEL_UP_MOVE(52, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(58, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(59, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(60, MOVE_SACRED_SWORD),
LEVEL_UP_MOVE(67, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(70, MOVE_GUILLOTINE),
LEVEL_UP_END
};

static const struct LevelUpMove sGuzzlordLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE( 1, MOVE_BELCH),
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_SWALLOW),
LEVEL_UP_MOVE( 1, MOVE_STOCKPILE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE( 5, MOVE_SWALLOW),
LEVEL_UP_MOVE( 5, MOVE_STOCKPILE),
LEVEL_UP_MOVE(10, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(13, MOVE_STOMP),
LEVEL_UP_MOVE(13, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(19, MOVE_STEAMROLLER),
LEVEL_UP_MOVE(22, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(23, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(25, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(29, MOVE_IRON_TAIL),
LEVEL_UP_MOVE(31, MOVE_CRUNCH),
LEVEL_UP_MOVE(35, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(42, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(44, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(52, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(59, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(60, MOVE_BELCH),
LEVEL_UP_MOVE(60, MOVE_THRASH),
LEVEL_UP_MOVE(67, MOVE_WRING_OUT),
LEVEL_UP_MOVE(70, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sNecrozmaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MOONLIGHT),
LEVEL_UP_MOVE( 1, MOVE_MORNING_SUN),
LEVEL_UP_MOVE( 1, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_GRAVITY),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(13, MOVE_SLASH),
LEVEL_UP_MOVE(18, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(23, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(31, MOVE_GRAVITY),
LEVEL_UP_MOVE(33, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(33, MOVE_STORED_POWER),
LEVEL_UP_MOVE(41, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(56, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(59, MOVE_POWER_GEM),
LEVEL_UP_MOVE(67, MOVE_PHOTON_GEYSER),
LEVEL_UP_MOVE(67, MOVE_WRING_OUT),
LEVEL_UP_MOVE(72, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(84, MOVE_PRISMATIC_LASER),
LEVEL_UP_END
};

static const struct LevelUpMove sMagearnaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GYRO_BALL),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_CRAFTY_SHIELD),
LEVEL_UP_MOVE( 1, MOVE_GEAR_UP),
LEVEL_UP_MOVE( 1, MOVE_SHIFT_GEAR),
LEVEL_UP_MOVE( 1, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_PSYBEAM),
LEVEL_UP_MOVE( 6, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 9, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(12, MOVE_ROLLOUT),
LEVEL_UP_MOVE(24, MOVE_GEAR_UP),
LEVEL_UP_MOVE(25, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(26, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(30, MOVE_PSYBEAM),
LEVEL_UP_MOVE(31, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(39, MOVE_MIND_READER),
LEVEL_UP_MOVE(48, MOVE_SHIFT_GEAR),
LEVEL_UP_MOVE(54, MOVE_CRAFTY_SHIELD),
LEVEL_UP_MOVE(60, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(65, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(69, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE(73, MOVE_SYNCHRONOISE),
LEVEL_UP_MOVE(75, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE(80, MOVE_FLEUR_CANNON),
LEVEL_UP_MOVE(84, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(89, MOVE_HEART_SWAP),
LEVEL_UP_MOVE(97, MOVE_TRUMP_CARD),
LEVEL_UP_END
};

static const struct LevelUpMove sMarshadowLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE( 1, MOVE_ASSURANCE),
LEVEL_UP_MOVE( 1, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE(11, MOVE_FEINT),
LEVEL_UP_MOVE(13, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE(15, MOVE_ROLLING_KICK),
LEVEL_UP_MOVE(19, MOVE_SHADOW_PUNCH),
LEVEL_UP_MOVE(20, MOVE_COPYCAT),
LEVEL_UP_MOVE(22, MOVE_FORCE_PALM),
LEVEL_UP_MOVE(35, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(36, MOVE_ASSURANCE),
LEVEL_UP_MOVE(47, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(54, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE(58, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(65, MOVE_SPECTRAL_THIEF),
LEVEL_UP_MOVE(81, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(83, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(87, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sPoipoleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 7, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(20, MOVE_CHARM),
LEVEL_UP_MOVE(21, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(24, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(32, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(39, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(46, MOVE_POISON_JAB),
LEVEL_UP_MOVE(56, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(58, MOVE_TOXIC),
LEVEL_UP_END
};

static const struct LevelUpMove sNaganadelLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_AIR_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 7, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(20, MOVE_CHARM),
LEVEL_UP_MOVE(21, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(24, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(32, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(39, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(46, MOVE_POISON_JAB),
LEVEL_UP_MOVE(53, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(56, MOVE_GASTRO_ACID),
LEVEL_UP_MOVE(58, MOVE_TOXIC),
LEVEL_UP_MOVE(61, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(70, MOVE_DRAGON_RUSH),
LEVEL_UP_END
};

static const struct LevelUpMove sStakatakaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 9, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(10, MOVE_PROTECT),
LEVEL_UP_MOVE(15, MOVE_STOMP),
LEVEL_UP_MOVE(17, MOVE_BIDE),
LEVEL_UP_MOVE(20, MOVE_BLOCK),
LEVEL_UP_MOVE(20, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(34, MOVE_AUTOTOMIZE),
LEVEL_UP_MOVE(35, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(41, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(45, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(47, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(50, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(52, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(52, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(67, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sBlacephalonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE(10, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(10, MOVE_EMBER),
LEVEL_UP_MOVE(13, MOVE_STORED_POWER),
LEVEL_UP_MOVE(16, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(17, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(20, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(20, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(30, MOVE_INCINERATE),
LEVEL_UP_MOVE(35, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(40, MOVE_MYSTICAL_FIRE),
LEVEL_UP_MOVE(44, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(45, MOVE_CALM_MIND),
LEVEL_UP_MOVE(55, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(57, MOVE_TRICK),
LEVEL_UP_MOVE(58, MOVE_FIRE_BLAST),
LEVEL_UP_MOVE(67, MOVE_MIND_BLOWN),
LEVEL_UP_END
};

static const struct LevelUpMove sZeraoraLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWER_UP_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SNARL),
LEVEL_UP_MOVE( 1, MOVE_SPARK),
LEVEL_UP_MOVE( 8, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(19, MOVE_SNARL),
LEVEL_UP_MOVE(21, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE(22, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(26, MOVE_SLASH),
LEVEL_UP_MOVE(28, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE(36, MOVE_CHARGE),
LEVEL_UP_MOVE(43, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE(44, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(60, MOVE_DISCHARGE),
LEVEL_UP_MOVE(63, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(77, MOVE_PLASMA_FISTS),
LEVEL_UP_MOVE(80, MOVE_AGILITY),
LEVEL_UP_MOVE(84, MOVE_CLOSE_COMBAT),
LEVEL_UP_END
};

static const struct LevelUpMove sMeltanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 8, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(16, MOVE_HEADBUTT),
LEVEL_UP_MOVE(22, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(27, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(32, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(41, MOVE_FLASH_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sMelmetalLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 9, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(22, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(27, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(32, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(41, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(49, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE(57, MOVE_PROTECT),
LEVEL_UP_MOVE(64, MOVE_DISCHARGE),
LEVEL_UP_MOVE(72, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(80, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(84, MOVE_DOUBLE_IRON_BASH),
LEVEL_UP_MOVE(94, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sGrookeyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_BRANCH_POKE),
LEVEL_UP_MOVE( 8, MOVE_TAUNT),
LEVEL_UP_MOVE(12, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(17, MOVE_SCREECH),
LEVEL_UP_MOVE(20, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(24, MOVE_SLAM),
LEVEL_UP_MOVE(28, MOVE_UPROAR),
LEVEL_UP_MOVE(32, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(36, MOVE_ENDEAVOR),
LEVEL_UP_END
};

static const struct LevelUpMove sThwackeyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BRANCH_POKE),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE(12, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(19, MOVE_SCREECH),
LEVEL_UP_MOVE(24, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(30, MOVE_SLAM),
LEVEL_UP_MOVE(36, MOVE_UPROAR),
LEVEL_UP_MOVE(42, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(48, MOVE_ENDEAVOR),
LEVEL_UP_END
};

static const struct LevelUpMove sRillaboomLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DRUM_BEATING),
LEVEL_UP_MOVE( 1, MOVE_DRUM_BEATING),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_BRANCH_POKE),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE(12, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(19, MOVE_SCREECH),
LEVEL_UP_MOVE(24, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(30, MOVE_SLAM),
LEVEL_UP_MOVE(38, MOVE_UPROAR),
LEVEL_UP_MOVE(46, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(54, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(62, MOVE_BOOMBURST),
LEVEL_UP_END
};

static const struct LevelUpMove sScorbunnyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_EMBER),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(12, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(17, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(20, MOVE_AGILITY),
LEVEL_UP_MOVE(24, MOVE_HEADBUTT),
LEVEL_UP_MOVE(28, MOVE_COUNTER),
LEVEL_UP_MOVE(32, MOVE_BOUNCE),
LEVEL_UP_MOVE(36, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sRabootLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(12, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(19, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(24, MOVE_AGILITY),
LEVEL_UP_MOVE(30, MOVE_HEADBUTT),
LEVEL_UP_MOVE(36, MOVE_COUNTER),
LEVEL_UP_MOVE(42, MOVE_BOUNCE),
LEVEL_UP_MOVE(48, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sCinderaceLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PYRO_BALL),
LEVEL_UP_MOVE( 1, MOVE_PYRO_BALL),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(12, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(19, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(24, MOVE_AGILITY),
LEVEL_UP_MOVE(30, MOVE_HEADBUTT),
LEVEL_UP_MOVE(38, MOVE_COUNTER),
LEVEL_UP_MOVE(46, MOVE_BOUNCE),
LEVEL_UP_MOVE(54, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(62, MOVE_COURT_CHANGE),
LEVEL_UP_END
};

static const struct LevelUpMove sSobbleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 8, MOVE_BIND),
LEVEL_UP_MOVE(12, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(17, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE(20, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(24, MOVE_U_TURN),
LEVEL_UP_MOVE(28, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(32, MOVE_SOAK),
LEVEL_UP_MOVE(36, MOVE_RAIN_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sDrizzileLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE(12, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(19, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE(24, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(30, MOVE_U_TURN),
LEVEL_UP_MOVE(36, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(42, MOVE_SOAK),
LEVEL_UP_MOVE(48, MOVE_RAIN_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sInteleonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SNIPE_SHOT),
LEVEL_UP_MOVE( 1, MOVE_SNIPE_SHOT),
LEVEL_UP_MOVE( 1, MOVE_ACROBATICS),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE(12, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(19, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE(24, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(30, MOVE_U_TURN),
LEVEL_UP_MOVE(38, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(46, MOVE_SOAK),
LEVEL_UP_MOVE(54, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(62, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sSkwovetLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_BITE),
LEVEL_UP_MOVE(10, MOVE_STUFF_CHEEKS),
LEVEL_UP_MOVE(15, MOVE_STOCKPILE),
LEVEL_UP_MOVE(15, MOVE_SWALLOW),
LEVEL_UP_MOVE(15, MOVE_SPIT_UP),
LEVEL_UP_MOVE(20, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(25, MOVE_REST),
LEVEL_UP_MOVE(30, MOVE_COUNTER),
LEVEL_UP_MOVE(35, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(40, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(45, MOVE_BELCH),
LEVEL_UP_END
};

static const struct LevelUpMove sGreedentLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_STUFF_CHEEKS),
LEVEL_UP_MOVE(15, MOVE_STOCKPILE),
LEVEL_UP_MOVE(15, MOVE_SWALLOW),
LEVEL_UP_MOVE(15, MOVE_SPIT_UP),
LEVEL_UP_MOVE(20, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(27, MOVE_REST),
LEVEL_UP_MOVE(34, MOVE_COUNTER),
LEVEL_UP_MOVE(41, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(48, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(55, MOVE_BELCH),
LEVEL_UP_END
};

static const struct LevelUpMove sRookideeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 4, MOVE_POWER_TRIP),
LEVEL_UP_MOVE( 8, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(12, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(16, MOVE_PLUCK),
LEVEL_UP_MOVE(20, MOVE_TAUNT),
LEVEL_UP_MOVE(24, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(28, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(32, MOVE_SWAGGER),
LEVEL_UP_MOVE(36, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sCorvisquireLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_POWER_TRIP),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(12, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(16, MOVE_PLUCK),
LEVEL_UP_MOVE(22, MOVE_TAUNT),
LEVEL_UP_MOVE(28, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(34, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(40, MOVE_SWAGGER),
LEVEL_UP_MOVE(46, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sCorviknightLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_STEEL_WING),
LEVEL_UP_MOVE( 1, MOVE_STEEL_WING),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_METAL_SOUND),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_POWER_TRIP),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(12, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(16, MOVE_PLUCK),
LEVEL_UP_MOVE(22, MOVE_TAUNT),
LEVEL_UP_MOVE(28, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(34, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(42, MOVE_SWAGGER),
LEVEL_UP_MOVE(50, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sBlipbugLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_END
};

static const struct LevelUpMove sDottlerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_REFLECT),
LEVEL_UP_MOVE( 0, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE( 0, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 1, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_END
};

static const struct LevelUpMove sOrbeetleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 1, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE( 4, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 8, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(12, MOVE_AGILITY),
LEVEL_UP_MOVE(16, MOVE_PSYBEAM),
LEVEL_UP_MOVE(20, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(24, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE(28, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(32, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(40, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(44, MOVE_CALM_MIND),
LEVEL_UP_MOVE(48, MOVE_PSYCHIC_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sNickitLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_BEAT_UP),
LEVEL_UP_MOVE( 8, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(12, MOVE_SNARL),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(20, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(24, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(28, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(32, MOVE_TAIL_SLAP),
LEVEL_UP_MOVE(36, MOVE_FOUL_PLAY),
LEVEL_UP_END
};

static const struct LevelUpMove sThievulLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_THIEF),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_THIEF),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_BEAT_UP),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(12, MOVE_SNARL),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(22, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(26, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE(28, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(34, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(40, MOVE_TAIL_SLAP),
LEVEL_UP_MOVE(44, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(46, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(52, MOVE_PARTING_SHOT),
LEVEL_UP_END
};

static const struct LevelUpMove sGossifleurLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 4, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 8, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(12, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_ROUND),
LEVEL_UP_MOVE(21, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE(24, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(28, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(32, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(36, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sEldegossLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE( 1, MOVE_COTTON_SPORE),
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_SING),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(12, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_ROUND),
LEVEL_UP_MOVE(23, MOVE_LEAF_TORNADO),
LEVEL_UP_MOVE(28, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(34, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(40, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(46, MOVE_LEAF_STORM),
LEVEL_UP_MOVE(52, MOVE_COTTON_GUARD),
LEVEL_UP_END
};

static const struct LevelUpMove sWoolooLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 8, MOVE_COPYCAT),
LEVEL_UP_MOVE(12, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(16, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(21, MOVE_HEADBUTT),
LEVEL_UP_MOVE(25, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(28, MOVE_GUARD_SWAP),
LEVEL_UP_MOVE(32, MOVE_REVERSAL),
LEVEL_UP_MOVE(36, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(40, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sDubwoolLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE(12, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(16, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(21, MOVE_HEADBUTT),
LEVEL_UP_MOVE(27, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(32, MOVE_GUARD_SWAP),
LEVEL_UP_MOVE(38, MOVE_REVERSAL),
LEVEL_UP_MOVE(44, MOVE_COTTON_GUARD),
LEVEL_UP_MOVE(50, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(56, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sChewtleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 7, MOVE_BITE),
LEVEL_UP_MOVE(14, MOVE_PROTECT),
LEVEL_UP_MOVE(21, MOVE_HEADBUTT),
LEVEL_UP_MOVE(28, MOVE_COUNTER),
LEVEL_UP_MOVE(35, MOVE_JAW_LOCK),
LEVEL_UP_MOVE(42, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(49, MOVE_BODY_SLAM),
LEVEL_UP_END
};

static const struct LevelUpMove sDrednawLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE( 1, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE( 1, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE(21, MOVE_HEADBUTT),
LEVEL_UP_MOVE(30, MOVE_COUNTER),
LEVEL_UP_MOVE(39, MOVE_JAW_LOCK),
LEVEL_UP_MOVE(48, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(57, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(66, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sYamperLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_NUZZLE),
LEVEL_UP_MOVE(10, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_ROAR),
LEVEL_UP_MOVE(20, MOVE_SPARK),
LEVEL_UP_MOVE(26, MOVE_CHARM),
LEVEL_UP_MOVE(30, MOVE_CRUNCH),
LEVEL_UP_MOVE(35, MOVE_CHARGE),
LEVEL_UP_MOVE(40, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(45, MOVE_PLAY_ROUGH),
LEVEL_UP_END
};

static const struct LevelUpMove sBoltundLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ELECTRIFY),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_ROAR),
LEVEL_UP_MOVE(20, MOVE_SPARK),
LEVEL_UP_MOVE(28, MOVE_CHARM),
LEVEL_UP_MOVE(34, MOVE_CRUNCH),
LEVEL_UP_MOVE(41, MOVE_CHARGE),
LEVEL_UP_MOVE(48, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE(55, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(62, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sRolycolyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 5, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(10, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(15, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(20, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(25, MOVE_INCINERATE),
LEVEL_UP_MOVE(30, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(35, MOVE_HEAT_CRASH),
LEVEL_UP_MOVE(40, MOVE_ROCK_BLAST),
LEVEL_UP_END
};

static const struct LevelUpMove sCarkolLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(15, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(20, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(27, MOVE_INCINERATE),
LEVEL_UP_MOVE(35, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(41, MOVE_HEAT_CRASH),
LEVEL_UP_MOVE(48, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(55, MOVE_BURN_UP),
LEVEL_UP_END
};

static const struct LevelUpMove sCoalossalLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_TAR_SHOT),
LEVEL_UP_MOVE( 1, MOVE_TAR_SHOT),
LEVEL_UP_MOVE( 1, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(15, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(20, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(27, MOVE_INCINERATE),
LEVEL_UP_MOVE(37, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(45, MOVE_HEAT_CRASH),
LEVEL_UP_MOVE(54, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(63, MOVE_BURN_UP),
LEVEL_UP_END
};

static const struct LevelUpMove sApplinLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_END
};

static const struct LevelUpMove sFlappleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_RECYCLE),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_TWISTER),
LEVEL_UP_MOVE( 4, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 8, MOVE_ACROBATICS),
LEVEL_UP_MOVE(12, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(16, MOVE_PROTECT),
LEVEL_UP_MOVE(20, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(24, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(28, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(32, MOVE_GRAV_APPLE),
LEVEL_UP_MOVE(36, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(40, MOVE_FLY),
LEVEL_UP_MOVE(44, MOVE_DRAGON_RUSH),
LEVEL_UP_END
};

static const struct LevelUpMove sAppletunLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_RECYCLE),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE( 4, MOVE_CURSE),
LEVEL_UP_MOVE( 8, MOVE_STOMP),
LEVEL_UP_MOVE(12, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(16, MOVE_PROTECT),
LEVEL_UP_MOVE(20, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(24, MOVE_RECOVER),
LEVEL_UP_MOVE(28, MOVE_APPLE_ACID),
LEVEL_UP_MOVE(32, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(36, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(40, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(44, MOVE_ENERGY_BALL),
LEVEL_UP_END
};

static const struct LevelUpMove sSilicobraLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_MINIMIZE),
LEVEL_UP_MOVE(10, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(15, MOVE_BULLDOZE),
LEVEL_UP_MOVE(20, MOVE_HEADBUTT),
LEVEL_UP_MOVE(25, MOVE_GLARE),
LEVEL_UP_MOVE(30, MOVE_DIG),
LEVEL_UP_MOVE(35, MOVE_SANDSTORM),
LEVEL_UP_MOVE(40, MOVE_SLAM),
LEVEL_UP_MOVE(45, MOVE_COIL),
LEVEL_UP_MOVE(50, MOVE_SAND_TOMB),
LEVEL_UP_END
};

static const struct LevelUpMove sSandacondaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SKULL_BASH),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(15, MOVE_BULLDOZE),
LEVEL_UP_MOVE(20, MOVE_HEADBUTT),
LEVEL_UP_MOVE(25, MOVE_GLARE),
LEVEL_UP_MOVE(30, MOVE_DIG),
LEVEL_UP_MOVE(35, MOVE_SANDSTORM),
LEVEL_UP_MOVE(42, MOVE_SLAM),
LEVEL_UP_MOVE(49, MOVE_COIL),
LEVEL_UP_MOVE(51, MOVE_SAND_TOMB),
LEVEL_UP_END
};

static const struct LevelUpMove sCramorantLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BELCH),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_STOCKPILE),
LEVEL_UP_MOVE( 1, MOVE_SWALLOW),
LEVEL_UP_MOVE( 1, MOVE_SPIT_UP),
LEVEL_UP_MOVE( 7, MOVE_WATER_GUN),
LEVEL_UP_MOVE(14, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(21, MOVE_PLUCK),
LEVEL_UP_MOVE(28, MOVE_DIVE),
LEVEL_UP_MOVE(35, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(42, MOVE_AMNESIA),
LEVEL_UP_MOVE(49, MOVE_THRASH),
LEVEL_UP_MOVE(56, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sArrokudaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 6, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_AGILITY),
LEVEL_UP_MOVE(24, MOVE_DIVE),
LEVEL_UP_MOVE(30, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(36, MOVE_CRUNCH),
LEVEL_UP_MOVE(42, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(48, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sBarraskewdaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THROAT_CHOP),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_AGILITY),
LEVEL_UP_MOVE(24, MOVE_DIVE),
LEVEL_UP_MOVE(32, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(40, MOVE_CRUNCH),
LEVEL_UP_MOVE(48, MOVE_LIQUIDATION),
LEVEL_UP_MOVE(56, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sToxelLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BELCH),
LEVEL_UP_MOVE( 1, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_END
};

static const struct LevelUpMove sToxtricityLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE( 1, MOVE_BELCH),
LEVEL_UP_MOVE( 1, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE( 4, MOVE_CHARGE),
LEVEL_UP_MOVE( 8, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(12, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(16, MOVE_TAUNT),
LEVEL_UP_MOVE(20, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(24, MOVE_SCREECH),
LEVEL_UP_MOVE(28, MOVE_SWAGGER),
LEVEL_UP_MOVE(32, MOVE_TOXIC),
LEVEL_UP_MOVE(36, MOVE_DISCHARGE),
LEVEL_UP_MOVE(40, MOVE_POISON_JAB),
LEVEL_UP_MOVE(44, MOVE_OVERDRIVE),
LEVEL_UP_MOVE(48, MOVE_BOOMBURST),
LEVEL_UP_MOVE(52, MOVE_SHIFT_GEAR),
LEVEL_UP_END
};

static const struct LevelUpMove sSizzlipedeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 5, MOVE_WRAP),
LEVEL_UP_MOVE(10, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(20, MOVE_BUG_BITE),
LEVEL_UP_MOVE(25, MOVE_COIL),
LEVEL_UP_MOVE(30, MOVE_SLAM),
LEVEL_UP_MOVE(35, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(40, MOVE_CRUNCH),
LEVEL_UP_MOVE(45, MOVE_FIRE_LASH),
LEVEL_UP_MOVE(50, MOVE_LUNGE),
LEVEL_UP_MOVE(55, MOVE_BURN_UP),
LEVEL_UP_END
};

static const struct LevelUpMove sCentiskorchLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_INFERNO),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(20, MOVE_BUG_BITE),
LEVEL_UP_MOVE(25, MOVE_COIL),
LEVEL_UP_MOVE(32, MOVE_SLAM),
LEVEL_UP_MOVE(39, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(46, MOVE_CRUNCH),
LEVEL_UP_MOVE(53, MOVE_FIRE_LASH),
LEVEL_UP_MOVE(60, MOVE_LUNGE),
LEVEL_UP_MOVE(67, MOVE_BURN_UP),
LEVEL_UP_END
};

static const struct LevelUpMove sClobbopusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_FEINT),
LEVEL_UP_MOVE(10, MOVE_BIND),
LEVEL_UP_MOVE(15, MOVE_DETECT),
LEVEL_UP_MOVE(20, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(25, MOVE_BULK_UP),
LEVEL_UP_MOVE(30, MOVE_SUBMISSION),
LEVEL_UP_MOVE(35, MOVE_TAUNT),
LEVEL_UP_MOVE(40, MOVE_REVERSAL),
LEVEL_UP_MOVE(45, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sGrapploctLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_OCTOLOCK),
LEVEL_UP_MOVE( 1, MOVE_OCTOLOCK),
LEVEL_UP_MOVE( 1, MOVE_OCTAZOOKA),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE(15, MOVE_DETECT),
LEVEL_UP_MOVE(20, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(25, MOVE_BULK_UP),
LEVEL_UP_MOVE(30, MOVE_SUBMISSION),
LEVEL_UP_MOVE(35, MOVE_TAUNT),
LEVEL_UP_MOVE(40, MOVE_REVERSAL),
LEVEL_UP_MOVE(45, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(50, MOVE_TOPSY_TURVY),
LEVEL_UP_END
};

static const struct LevelUpMove sSinisteaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 6, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE(12, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(18, MOVE_PROTECT),
LEVEL_UP_MOVE(24, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(30, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(36, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(42, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(48, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(54, MOVE_MEMENTO),
LEVEL_UP_MOVE(60, MOVE_SHELL_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sPolteageistLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_TEATIME),
LEVEL_UP_MOVE( 1, MOVE_TEATIME),
LEVEL_UP_MOVE( 1, MOVE_STRENGTH_SAP),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE(18, MOVE_PROTECT),
LEVEL_UP_MOVE(24, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(30, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(36, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(42, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(48, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(54, MOVE_MEMENTO),
LEVEL_UP_MOVE(60, MOVE_SHELL_SMASH),
LEVEL_UP_MOVE(66, MOVE_CURSE),
LEVEL_UP_END
};

static const struct LevelUpMove sHatennaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 5, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(10, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(15, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(20, MOVE_PSYBEAM),
LEVEL_UP_MOVE(25, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(30, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(35, MOVE_CALM_MIND),
LEVEL_UP_MOVE(40, MOVE_PSYCHIC),
LEVEL_UP_MOVE(45, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sHattremLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE( 1, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_LIFE_DEW),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(15, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(20, MOVE_PSYBEAM),
LEVEL_UP_MOVE(25, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(30, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(37, MOVE_CALM_MIND),
LEVEL_UP_MOVE(44, MOVE_PSYCHIC),
LEVEL_UP_MOVE(51, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sHattereneLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE( 1, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE( 1, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_LIFE_DEW),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(15, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(20, MOVE_PSYBEAM),
LEVEL_UP_MOVE(25, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(30, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(37, MOVE_CALM_MIND),
LEVEL_UP_MOVE(46, MOVE_PSYCHIC),
LEVEL_UP_MOVE(55, MOVE_HEALING_WISH),
LEVEL_UP_MOVE(64, MOVE_MAGIC_POWDER),
LEVEL_UP_END
};

static const struct LevelUpMove sImpidimpLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_CONFIDE),
LEVEL_UP_MOVE( 4, MOVE_BITE),
LEVEL_UP_MOVE( 8, MOVE_FLATTER),
LEVEL_UP_MOVE(12, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(20, MOVE_SWAGGER),
LEVEL_UP_MOVE(24, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(28, MOVE_TORMENT),
LEVEL_UP_MOVE(33, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(36, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(40, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(44, MOVE_FOUL_PLAY),
LEVEL_UP_END
};

static const struct LevelUpMove sMorgremLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FALSE_SURRENDER),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SURRENDER),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_CONFIDE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_FLATTER),
LEVEL_UP_MOVE(12, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(20, MOVE_SWAGGER),
LEVEL_UP_MOVE(24, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(28, MOVE_TORMENT),
LEVEL_UP_MOVE(35, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(40, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(46, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(52, MOVE_FOUL_PLAY),
LEVEL_UP_END
};

static const struct LevelUpMove sGrimmsnarlLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SPIRIT_BREAK),
LEVEL_UP_MOVE( 1, MOVE_SPIRIT_BREAK),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SURRENDER),
LEVEL_UP_MOVE( 1, MOVE_BULK_UP),
LEVEL_UP_MOVE( 1, MOVE_POWER_UP_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_CONFIDE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_FLATTER),
LEVEL_UP_MOVE(12, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(20, MOVE_SWAGGER),
LEVEL_UP_MOVE(24, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(28, MOVE_TORMENT),
LEVEL_UP_MOVE(35, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(40, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(48, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(56, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(64, MOVE_HAMMER_ARM),
LEVEL_UP_END
};

static const struct LevelUpMove sObstagoonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_OBSTRUCT),
LEVEL_UP_MOVE( 1, MOVE_OBSTRUCT),
LEVEL_UP_MOVE( 1, MOVE_CROSS_CHOP),
LEVEL_UP_MOVE( 1, MOVE_SUBMISSION),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SWITCHEROO),
LEVEL_UP_MOVE( 1, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE( 1, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 9, MOVE_SNARL),
LEVEL_UP_MOVE(12, MOVE_HEADBUTT),
LEVEL_UP_MOVE(15, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(18, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(23, MOVE_REST),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(35, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(42, MOVE_COUNTER),
LEVEL_UP_MOVE(49, MOVE_TAUNT),
LEVEL_UP_MOVE(56, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sPerrserkerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_METAL_BURST),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE(12, MOVE_PAY_DAY),
LEVEL_UP_MOVE(16, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(20, MOVE_TAUNT),
LEVEL_UP_MOVE(24, MOVE_SWAGGER),
LEVEL_UP_MOVE(31, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(36, MOVE_SCREECH),
LEVEL_UP_MOVE(42, MOVE_SLASH),
LEVEL_UP_MOVE(48, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(54, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sCursolaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PERISH_SONG),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE(15, MOVE_SPITE),
LEVEL_UP_MOVE(20, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(25, MOVE_HEX),
LEVEL_UP_MOVE(30, MOVE_CURSE),
LEVEL_UP_MOVE(35, MOVE_STRENGTH_SAP),
LEVEL_UP_MOVE(40, MOVE_POWER_GEM),
LEVEL_UP_MOVE(45, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(50, MOVE_GRUDGE),
LEVEL_UP_MOVE(55, MOVE_MIRROR_COAT),
LEVEL_UP_END
};

static const struct LevelUpMove sSirfetchdLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_FIRST_IMPRESSION),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(15, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(20, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(25, MOVE_DETECT),
LEVEL_UP_MOVE(30, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(35, MOVE_DEFOG),
LEVEL_UP_MOVE(40, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(45, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(50, MOVE_SLAM),
LEVEL_UP_MOVE(55, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(60, MOVE_FINAL_GAMBIT),
LEVEL_UP_MOVE(65, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE(70, MOVE_METEOR_ASSAULT),
LEVEL_UP_END
};

static const struct LevelUpMove sMrRimeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE( 1, MOVE_SLACK_OFF),
LEVEL_UP_MOVE( 1, MOVE_AFTER_YOU),
LEVEL_UP_MOVE( 1, MOVE_BLOCK),
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_RECYCLE),
LEVEL_UP_MOVE( 1, MOVE_MIMIC),
LEVEL_UP_MOVE( 1, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 1, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 1, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE( 1, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(16, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE(20, MOVE_ICY_WIND),
LEVEL_UP_MOVE(24, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(28, MOVE_PSYBEAM),
LEVEL_UP_MOVE(32, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(36, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(40, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(44, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(48, MOVE_PSYCHIC),
LEVEL_UP_MOVE(52, MOVE_TEETER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sRunerigusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(12, MOVE_DISABLE),
LEVEL_UP_MOVE(16, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(20, MOVE_CRAFTY_SHIELD),
LEVEL_UP_MOVE(24, MOVE_HEX),
LEVEL_UP_MOVE(28, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(32, MOVE_SLAM),
LEVEL_UP_MOVE(38, MOVE_CURSE),
LEVEL_UP_MOVE(44, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(50, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(56, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(56, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(62, MOVE_DESTINY_BOND),
LEVEL_UP_END
};

static const struct LevelUpMove sMilceryLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE( 5, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(10, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(15, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(20, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(25, MOVE_ATTRACT),
LEVEL_UP_MOVE(30, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(35, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(40, MOVE_RECOVER),
LEVEL_UP_MOVE(45, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(50, MOVE_ENTRAINMENT),
LEVEL_UP_END
};

static const struct LevelUpMove sAlcremieLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DECORATE),
LEVEL_UP_MOVE( 1, MOVE_DECORATE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(15, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE(20, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(25, MOVE_ATTRACT),
LEVEL_UP_MOVE(30, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(35, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(40, MOVE_RECOVER),
LEVEL_UP_MOVE(45, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(50, MOVE_ENTRAINMENT),
LEVEL_UP_END
};

static const struct LevelUpMove sFalinksLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 5, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(10, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(15, MOVE_HEADBUTT),
LEVEL_UP_MOVE(20, MOVE_BULK_UP),
LEVEL_UP_MOVE(25, MOVE_ENDURE),
LEVEL_UP_MOVE(30, MOVE_REVERSAL),
LEVEL_UP_MOVE(35, MOVE_FIRST_IMPRESSION),
LEVEL_UP_MOVE(40, MOVE_NO_RETREAT),
LEVEL_UP_MOVE(45, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(50, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(55, MOVE_MEGAHORN),
LEVEL_UP_MOVE(60, MOVE_COUNTER),
LEVEL_UP_END
};

static const struct LevelUpMove sPincurchinLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 5, MOVE_WATER_GUN),
LEVEL_UP_MOVE(10, MOVE_CHARGE),
LEVEL_UP_MOVE(15, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(20, MOVE_SPARK),
LEVEL_UP_MOVE(25, MOVE_BUBBLE_BEAM),
LEVEL_UP_MOVE(30, MOVE_RECOVER),
LEVEL_UP_MOVE(35, MOVE_CURSE),
LEVEL_UP_MOVE(40, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE(45, MOVE_POISON_JAB),
LEVEL_UP_MOVE(50, MOVE_ZING_ZAP),
LEVEL_UP_MOVE(55, MOVE_ACUPRESSURE),
LEVEL_UP_MOVE(60, MOVE_DISCHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sSnomLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_END
};

static const struct LevelUpMove sFrosmothLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 1, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_STRUGGLE_BUG),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_ATTRACT),
LEVEL_UP_MOVE( 4, MOVE_STUN_SPORE),
LEVEL_UP_MOVE( 8, MOVE_INFESTATION),
LEVEL_UP_MOVE(12, MOVE_MIST),
LEVEL_UP_MOVE(16, MOVE_DEFOG),
LEVEL_UP_MOVE(21, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(24, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(28, MOVE_HAIL),
LEVEL_UP_MOVE(32, MOVE_BUG_BUZZ),
LEVEL_UP_MOVE(36, MOVE_AURORA_VEIL),
LEVEL_UP_MOVE(40, MOVE_BLIZZARD),
LEVEL_UP_MOVE(44, MOVE_TAILWIND),
LEVEL_UP_MOVE(48, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(52, MOVE_QUIVER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sStonjournerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ROCK_THROW),
LEVEL_UP_MOVE( 1, MOVE_BLOCK),
LEVEL_UP_MOVE( 6, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(12, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(18, MOVE_GRAVITY),
LEVEL_UP_MOVE(24, MOVE_STOMP),
LEVEL_UP_MOVE(30, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(36, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(42, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(48, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE(54, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE(60, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(66, MOVE_MEGA_KICK),
LEVEL_UP_END
};

static const struct LevelUpMove sEiscueLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 6, MOVE_MIST),
LEVEL_UP_MOVE(12, MOVE_WEATHER_BALL),
LEVEL_UP_MOVE(18, MOVE_ICY_WIND),
LEVEL_UP_MOVE(24, MOVE_HEADBUTT),
LEVEL_UP_MOVE(30, MOVE_AMNESIA),
LEVEL_UP_MOVE(36, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(42, MOVE_HAIL),
LEVEL_UP_MOVE(48, MOVE_AURORA_VEIL),
LEVEL_UP_MOVE(54, MOVE_SURF),
LEVEL_UP_MOVE(60, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sIndeedeeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 5, MOVE_ENCORE),
LEVEL_UP_MOVE(10, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(15, MOVE_PSYBEAM),
LEVEL_UP_MOVE(20, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(25, MOVE_AFTER_YOU),
LEVEL_UP_MOVE(30, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(35, MOVE_PSYCHIC),
LEVEL_UP_MOVE(40, MOVE_CALM_MIND),
LEVEL_UP_MOVE(45, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(50, MOVE_PSYCHIC_TERRAIN),
LEVEL_UP_MOVE(55, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sMorpekoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_POWER_TRIP),
LEVEL_UP_MOVE(15, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(20, MOVE_FLATTER),
LEVEL_UP_MOVE(25, MOVE_BITE),
LEVEL_UP_MOVE(30, MOVE_SPARK),
LEVEL_UP_MOVE(35, MOVE_TORMENT),
LEVEL_UP_MOVE(40, MOVE_AGILITY),
LEVEL_UP_MOVE(45, MOVE_BULLET_SEED),
LEVEL_UP_MOVE(50, MOVE_CRUNCH),
LEVEL_UP_MOVE(55, MOVE_AURA_WHEEL),
LEVEL_UP_MOVE(60, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sCufantLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_ROLLOUT),
LEVEL_UP_MOVE(10, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(15, MOVE_BULLDOZE),
LEVEL_UP_MOVE(20, MOVE_STOMP),
LEVEL_UP_MOVE(25, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(30, MOVE_DIG),
LEVEL_UP_MOVE(35, MOVE_STRENGTH),
LEVEL_UP_MOVE(40, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(45, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(50, MOVE_HIGH_HORSEPOWER),
LEVEL_UP_MOVE(55, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sCopperajahLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(15, MOVE_BULLDOZE),
LEVEL_UP_MOVE(20, MOVE_STOMP),
LEVEL_UP_MOVE(25, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(30, MOVE_DIG),
LEVEL_UP_MOVE(37, MOVE_STRENGTH),
LEVEL_UP_MOVE(44, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(51, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(58, MOVE_HIGH_HORSEPOWER),
LEVEL_UP_MOVE(65, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sDracozoltLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 7, MOVE_CHARGE),
LEVEL_UP_MOVE(14, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(21, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_PLUCK),
LEVEL_UP_MOVE(35, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(42, MOVE_STOMP),
LEVEL_UP_MOVE(49, MOVE_SLAM),
LEVEL_UP_MOVE(56, MOVE_DISCHARGE),
LEVEL_UP_MOVE(63, MOVE_BOLT_BEAK),
LEVEL_UP_MOVE(70, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(77, MOVE_DRAGON_RUSH),
LEVEL_UP_END
};

static const struct LevelUpMove sArctozoltLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 7, MOVE_CHARGE),
LEVEL_UP_MOVE(14, MOVE_ECHOED_VOICE),
LEVEL_UP_MOVE(21, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_PLUCK),
LEVEL_UP_MOVE(35, MOVE_AVALANCHE),
LEVEL_UP_MOVE(42, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(49, MOVE_SLAM),
LEVEL_UP_MOVE(56, MOVE_DISCHARGE),
LEVEL_UP_MOVE(63, MOVE_BOLT_BEAK),
LEVEL_UP_MOVE(70, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE(77, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sDracovishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 7, MOVE_PROTECT),
LEVEL_UP_MOVE(14, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(21, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_BITE),
LEVEL_UP_MOVE(35, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(42, MOVE_STOMP),
LEVEL_UP_MOVE(49, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(56, MOVE_CRUNCH),
LEVEL_UP_MOVE(63, MOVE_FISHIOUS_REND),
LEVEL_UP_MOVE(70, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(77, MOVE_DRAGON_RUSH),
LEVEL_UP_END
};

static const struct LevelUpMove sArctovishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 7, MOVE_PROTECT),
LEVEL_UP_MOVE(14, MOVE_ICY_WIND),
LEVEL_UP_MOVE(21, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_BITE),
LEVEL_UP_MOVE(35, MOVE_AURORA_VEIL),
LEVEL_UP_MOVE(42, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(49, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(56, MOVE_CRUNCH),
LEVEL_UP_MOVE(63, MOVE_FISHIOUS_REND),
LEVEL_UP_MOVE(70, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE(77, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sDuraludonLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 6, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(12, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(18, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(24, MOVE_BREAKING_SWIPE),
LEVEL_UP_MOVE(30, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(36, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(42, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(48, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(54, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(60, MOVE_METAL_BURST),
LEVEL_UP_MOVE(66, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sDreepyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_INFESTATION),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_END
};

static const struct LevelUpMove sDrakloakLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_INFESTATION),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 6, MOVE_LOCK_ON),
LEVEL_UP_MOVE(12, MOVE_ASSURANCE),
LEVEL_UP_MOVE(18, MOVE_HEX),
LEVEL_UP_MOVE(24, MOVE_AGILITY),
LEVEL_UP_MOVE(30, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(36, MOVE_U_TURN),
LEVEL_UP_MOVE(42, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(48, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(54, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(61, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(66, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(72, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sDragapultLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DRAGON_DARTS),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_DARTS),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_INFESTATION),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 6, MOVE_LOCK_ON),
LEVEL_UP_MOVE(12, MOVE_ASSURANCE),
LEVEL_UP_MOVE(18, MOVE_HEX),
LEVEL_UP_MOVE(24, MOVE_AGILITY),
LEVEL_UP_MOVE(30, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(36, MOVE_U_TURN),
LEVEL_UP_MOVE(42, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(48, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE(54, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(63, MOVE_DRAGON_RUSH),
LEVEL_UP_MOVE(70, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(78, MOVE_LAST_RESORT),
LEVEL_UP_END
};

static const struct LevelUpMove sZacianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SACRED_SWORD),
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_HOWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE(11, MOVE_SLASH),
LEVEL_UP_MOVE(22, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(33, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(44, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(55, MOVE_CRUNCH),
LEVEL_UP_MOVE(66, MOVE_MOONBLAST),
LEVEL_UP_MOVE(77, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(88, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sZamazentaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_METAL_BURST),
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_HOWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE(11, MOVE_SLASH),
LEVEL_UP_MOVE(22, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(33, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(44, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(55, MOVE_CRUNCH),
LEVEL_UP_MOVE(66, MOVE_MOONBLAST),
LEVEL_UP_MOVE(77, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(88, MOVE_GIGA_IMPACT),
LEVEL_UP_END
};

static const struct LevelUpMove sEternatusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POISON_TAIL),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 8, MOVE_TOXIC),
LEVEL_UP_MOVE(16, MOVE_VENOSHOCK),
LEVEL_UP_MOVE(24, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(32, MOVE_CROSS_POISON),
LEVEL_UP_MOVE(40, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(48, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(56, MOVE_DYNAMAX_CANNON),
LEVEL_UP_MOVE(64, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(72, MOVE_RECOVER),
LEVEL_UP_MOVE(80, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(88, MOVE_ETERNABEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sKubfuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 4, MOVE_ENDURE),
LEVEL_UP_MOVE( 8, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(12, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(16, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(20, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(28, MOVE_DETECT),
LEVEL_UP_MOVE(32, MOVE_BULK_UP),
LEVEL_UP_MOVE(36, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(40, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(44, MOVE_COUNTER),
LEVEL_UP_MOVE(48, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(52, MOVE_FOCUS_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sUrshifuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_WICKED_BLOW),
LEVEL_UP_MOVE( 1, MOVE_WICKED_BLOW),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_ENDURE),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(12, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(16, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(20, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(28, MOVE_DETECT),
LEVEL_UP_MOVE(32, MOVE_BULK_UP),
LEVEL_UP_MOVE(36, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(40, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(44, MOVE_COUNTER),
LEVEL_UP_MOVE(48, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(52, MOVE_FOCUS_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sZarudeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_BIND),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 6, MOVE_LEER),
LEVEL_UP_MOVE(12, MOVE_VINE_WHIP),
LEVEL_UP_MOVE(18, MOVE_GROWTH),
LEVEL_UP_MOVE(24, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(30, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(36, MOVE_GRASS_KNOT),
LEVEL_UP_MOVE(42, MOVE_BITE),
LEVEL_UP_MOVE(48, MOVE_U_TURN),
LEVEL_UP_MOVE(54, MOVE_SWAGGER),
LEVEL_UP_MOVE(60, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(66, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(72, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(78, MOVE_THRASH),
LEVEL_UP_MOVE(84, MOVE_POWER_WHIP),
LEVEL_UP_MOVE(90, MOVE_JUNGLE_HEALING),
LEVEL_UP_END
};

static const struct LevelUpMove sRegielekiLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 6, MOVE_ELECTROWEB),
LEVEL_UP_MOVE(12, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(18, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(24, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(30, MOVE_EXTREME_SPEED),
//LEVEL_UP_MOVE(36, MOVE_THUNDER_CAGE),
LEVEL_UP_MOVE(42, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(48, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(54, MOVE_THRASH),
LEVEL_UP_MOVE(60, MOVE_LOCK_ON),
LEVEL_UP_MOVE(66, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(72, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(78, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sRegidragoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TWISTER),
LEVEL_UP_MOVE( 1, MOVE_VICE_GRIP),
LEVEL_UP_MOVE( 6, MOVE_BITE),
LEVEL_UP_MOVE(12, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(18, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(24, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(30, MOVE_CRUNCH),
LEVEL_UP_MOVE(36, MOVE_DRAGON_CLAW),
LEVEL_UP_MOVE(42, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE(48, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE(54, MOVE_THRASH),
LEVEL_UP_MOVE(60, MOVE_LASER_FOCUS),
//LEVEL_UP_MOVE(66, MOVE_DRAGON_ENERGY),
LEVEL_UP_MOVE(72, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE(78, MOVE_EXPLOSION),
LEVEL_UP_END
};

static const struct LevelUpMove sGlastrierLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 6, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(12, MOVE_AVALANCHE),
LEVEL_UP_MOVE(18, MOVE_STOMP),
LEVEL_UP_MOVE(24, MOVE_TORMENT),
LEVEL_UP_MOVE(30, MOVE_MIST),
LEVEL_UP_MOVE(36, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE(42, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(48, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(54, MOVE_THRASH),
LEVEL_UP_MOVE(60, MOVE_TAUNT),
LEVEL_UP_MOVE(66, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(72, MOVE_SWORDS_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sSpectrierLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 6, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(12, MOVE_HEX),
LEVEL_UP_MOVE(18, MOVE_STOMP),
LEVEL_UP_MOVE(24, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(30, MOVE_HAZE),
LEVEL_UP_MOVE(36, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(42, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(48, MOVE_AGILITY),
LEVEL_UP_MOVE(54, MOVE_THRASH),
LEVEL_UP_MOVE(60, MOVE_DISABLE),
LEVEL_UP_MOVE(66, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(72, MOVE_NASTY_PLOT),
LEVEL_UP_END
};

static const struct LevelUpMove sCalyrexLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 8, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(16, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(24, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(32, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(40, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(48, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(56, MOVE_PSYCHIC),
LEVEL_UP_MOVE(64, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(72, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(80, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(88, MOVE_FUTURE_SIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sRattataAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(11, MOVE_BITE),
LEVEL_UP_MOVE(13, MOVE_PURSUIT),
LEVEL_UP_MOVE(18, MOVE_HYPER_FANG),
LEVEL_UP_MOVE(19, MOVE_ASSURANCE),
LEVEL_UP_MOVE(20, MOVE_CRUNCH),
LEVEL_UP_MOVE(21, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(24, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(29, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(34, MOVE_ENDEAVOR),
LEVEL_UP_END
};

static const struct LevelUpMove sRaticateAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_SCARY_FACE),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 8, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(11, MOVE_BITE),
LEVEL_UP_MOVE(13, MOVE_PURSUIT),
LEVEL_UP_MOVE(19, MOVE_ASSURANCE),
LEVEL_UP_MOVE(21, MOVE_CRUNCH),
LEVEL_UP_MOVE(21, MOVE_HYPER_FANG),
LEVEL_UP_MOVE(24, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(31, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(40, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(44, MOVE_ENDEAVOR),
LEVEL_UP_END
};

static const struct LevelUpMove sRaichuAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 1, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_SLAM),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE( 1, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE( 1, MOVE_THUNDER),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_SPEED_SWAP),
LEVEL_UP_MOVE( 1, MOVE_SURF),
LEVEL_UP_END
};

static const struct LevelUpMove sSandshrewAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 3, MOVE_MIST),
LEVEL_UP_MOVE( 3, MOVE_BIDE),
LEVEL_UP_MOVE( 5, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 7, MOVE_ICE_BALL),
LEVEL_UP_MOVE( 8, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 9, MOVE_ROLLOUT),
LEVEL_UP_MOVE(11, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(13, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(16, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(17, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(18, MOVE_SWIFT),
LEVEL_UP_MOVE(22, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(24, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE(26, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(29, MOVE_SLASH),
LEVEL_UP_MOVE(32, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(35, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(36, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(42, MOVE_HAIL),
LEVEL_UP_MOVE(43, MOVE_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sSandslashAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_SPEAR),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE( 1, MOVE_METAL_BURST),
LEVEL_UP_MOVE( 1, MOVE_ROLLOUT),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 1, MOVE_GYRO_BALL),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_HAIL),
LEVEL_UP_MOVE( 1, MOVE_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 1, MOVE_ICE_BALL),
LEVEL_UP_END
};

static const struct LevelUpMove sVulpixAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 4, MOVE_DISABLE),
LEVEL_UP_MOVE( 8, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 9, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(12, MOVE_SPITE),
LEVEL_UP_MOVE(15, MOVE_ICY_WIND),
LEVEL_UP_MOVE(17, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(17, MOVE_ROAR),
LEVEL_UP_MOVE(18, MOVE_PAYBACK),
LEVEL_UP_MOVE(21, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(23, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE(23, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(26, MOVE_HEX),
LEVEL_UP_MOVE(28, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(30, MOVE_MIST),
LEVEL_UP_MOVE(31, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(34, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(36, MOVE_IMPRISON),
LEVEL_UP_MOVE(44, MOVE_AURORA_VEIL),
LEVEL_UP_MOVE(47, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(48, MOVE_SHEER_COLD),
LEVEL_UP_MOVE(48, MOVE_BLIZZARD),
LEVEL_UP_MOVE(50, MOVE_GRUDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sNinetalesAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE( 1, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_SPITE),
LEVEL_UP_MOVE( 1, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_AURORA_BEAM),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_AURORA_VEIL),
LEVEL_UP_MOVE( 1, MOVE_SHEER_COLD),
LEVEL_UP_MOVE( 1, MOVE_GRUDGE),
LEVEL_UP_MOVE( 1, MOVE_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SAFEGUARD),
LEVEL_UP_END
};

static const struct LevelUpMove sDiglettAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(11, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(12, MOVE_AGILITY),
LEVEL_UP_MOVE(14, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(15, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(16, MOVE_BULLDOZE),
LEVEL_UP_MOVE(21, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(21, MOVE_SLASH),
LEVEL_UP_MOVE(25, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(26, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(28, MOVE_SANDSTORM),
LEVEL_UP_MOVE(29, MOVE_DIG),
LEVEL_UP_MOVE(34, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(37, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(41, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sDugtrioAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 0, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SAND_TOMB),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_ROTOTILLER),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(11, MOVE_MUD_SLAP),
LEVEL_UP_MOVE(12, MOVE_AGILITY),
LEVEL_UP_MOVE(14, MOVE_MAGNITUDE),
LEVEL_UP_MOVE(15, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(16, MOVE_BULLDOZE),
LEVEL_UP_MOVE(21, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(21, MOVE_SLASH),
LEVEL_UP_MOVE(25, MOVE_MUD_BOMB),
LEVEL_UP_MOVE(27, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(30, MOVE_SANDSTORM),
LEVEL_UP_MOVE(32, MOVE_DIG),
LEVEL_UP_MOVE(39, MOVE_EARTH_POWER),
LEVEL_UP_MOVE(45, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(52, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sMeowthAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 7, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 8, MOVE_SCRATCH),
LEVEL_UP_MOVE(11, MOVE_BITE),
LEVEL_UP_MOVE(14, MOVE_FEINT),
LEVEL_UP_MOVE(15, MOVE_PAY_DAY),
LEVEL_UP_MOVE(18, MOVE_TAUNT),
LEVEL_UP_MOVE(22, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(24, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(27, MOVE_ASSURANCE),
LEVEL_UP_MOVE(27, MOVE_SCREECH),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(37, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(38, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(41, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(46, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(55, MOVE_DARK_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sPersianAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_QUASH),
LEVEL_UP_MOVE( 1, MOVE_SWITCHEROO),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_SWIFT),
LEVEL_UP_MOVE( 1, MOVE_AMNESIA),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 7, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(11, MOVE_BITE),
LEVEL_UP_MOVE(12, MOVE_PAY_DAY),
LEVEL_UP_MOVE(18, MOVE_TAUNT),
LEVEL_UP_MOVE(22, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(25, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(29, MOVE_ASSURANCE),
LEVEL_UP_MOVE(30, MOVE_SCREECH),
LEVEL_UP_MOVE(32, MOVE_SLASH),
LEVEL_UP_MOVE(32, MOVE_POWER_GEM),
LEVEL_UP_MOVE(40, MOVE_FEINT),
LEVEL_UP_MOVE(45, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(46, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(52, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE(56, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(69, MOVE_DARK_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sGeodudeAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 3, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 4, MOVE_CHARGE),
LEVEL_UP_MOVE( 6, MOVE_BIDE),
LEVEL_UP_MOVE( 6, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(10, MOVE_ROLLOUT),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(12, MOVE_SPARK),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(18, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(20, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(21, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(23, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(24, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE(30, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(34, MOVE_DISCHARGE),
LEVEL_UP_MOVE(35, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(35, MOVE_EXPLOSION),
LEVEL_UP_MOVE(42, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sGravelerAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE( 3, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 4, MOVE_CHARGE),
LEVEL_UP_MOVE( 6, MOVE_BIDE),
LEVEL_UP_MOVE( 6, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(10, MOVE_ROLLOUT),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(12, MOVE_SPARK),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(18, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(21, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(21, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(23, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(26, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE(34, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(40, MOVE_DISCHARGE),
LEVEL_UP_MOVE(44, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(45, MOVE_EXPLOSION),
LEVEL_UP_MOVE(54, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sGolemAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MEGA_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_BIDE),
LEVEL_UP_MOVE( 1, MOVE_HEAVY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE( 3, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 4, MOVE_CHARGE),
LEVEL_UP_MOVE( 6, MOVE_BIDE),
LEVEL_UP_MOVE( 6, MOVE_ROCK_POLISH),
LEVEL_UP_MOVE(10, MOVE_STEAMROLLER),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(12, MOVE_SPARK),
LEVEL_UP_MOVE(15, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(18, MOVE_SMACK_DOWN),
LEVEL_UP_MOVE(21, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(21, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(23, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(26, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE(34, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(40, MOVE_DISCHARGE),
LEVEL_UP_MOVE(44, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(45, MOVE_EXPLOSION),
LEVEL_UP_MOVE(54, MOVE_STONE_EDGE),
LEVEL_UP_MOVE(60, MOVE_HEAVY_SLAM),
LEVEL_UP_END
};

static const struct LevelUpMove sGrimerAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 5, MOVE_HARDEN),
LEVEL_UP_MOVE(15, MOVE_DISABLE),
LEVEL_UP_MOVE(15, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(16, MOVE_MINIMIZE),
LEVEL_UP_MOVE(18, MOVE_POISON_FANG),
LEVEL_UP_MOVE(26, MOVE_FLING),
LEVEL_UP_MOVE(29, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(33, MOVE_SCREECH),
LEVEL_UP_MOVE(34, MOVE_CRUNCH),
LEVEL_UP_MOVE(40, MOVE_GUNK_SHOT),
LEVEL_UP_MOVE(42, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(46, MOVE_BELCH),
LEVEL_UP_MOVE(48, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(48, MOVE_MEMENTO),
LEVEL_UP_END
};

static const struct LevelUpMove sMukAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_MOONBLAST),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_MINIMIZE),
LEVEL_UP_MOVE( 1, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 5, MOVE_HARDEN),
LEVEL_UP_MOVE(15, MOVE_DISABLE),
LEVEL_UP_MOVE(15, MOVE_BITE),
LEVEL_UP_MOVE(15, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE(16, MOVE_MINIMIZE),
LEVEL_UP_MOVE(18, MOVE_POISON_FANG),
LEVEL_UP_MOVE(26, MOVE_FLING),
LEVEL_UP_MOVE(29, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(33, MOVE_SCREECH),
LEVEL_UP_MOVE(34, MOVE_CRUNCH),
LEVEL_UP_MOVE(40, MOVE_GUNK_SHOT),
LEVEL_UP_MOVE(47, MOVE_ACID_ARMOR),
LEVEL_UP_MOVE(52, MOVE_BELCH),
LEVEL_UP_MOVE(57, MOVE_MEMENTO),
LEVEL_UP_MOVE(60, MOVE_SLUDGE_BOMB),
LEVEL_UP_END
};

static const struct LevelUpMove sExeggutorAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DRAGON_HAMMER),
LEVEL_UP_MOVE( 0, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_HAMMER),
LEVEL_UP_MOVE( 1, MOVE_SEED_BOMB),
LEVEL_UP_MOVE( 1, MOVE_PSYSHOCK),
LEVEL_UP_MOVE( 1, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE( 1, MOVE_LEAF_STORM),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 1, MOVE_BULLET_SEED),
LEVEL_UP_MOVE( 1, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_UPROAR),
LEVEL_UP_MOVE( 1, MOVE_WORRY_SEED),
LEVEL_UP_MOVE( 1, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_HYPNOSIS),
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE( 1, MOVE_POWER_WHIP),
LEVEL_UP_MOVE( 1, MOVE_EGG_BOMB),
LEVEL_UP_MOVE( 1, MOVE_BARRAGE),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(17, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(27, MOVE_EGG_BOMB),
LEVEL_UP_MOVE(37, MOVE_WOOD_HAMMER),
LEVEL_UP_MOVE(47, MOVE_LEAF_STORM),
LEVEL_UP_END
};

static const struct LevelUpMove sMarowakAlolanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SHADOW_BONE),
LEVEL_UP_MOVE( 0, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_HEADBUTT),
LEVEL_UP_MOVE( 1, MOVE_RETALIATE),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BONE_CLUB),
LEVEL_UP_MOVE( 1, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE( 2, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE( 9, MOVE_BONE_CLUB),
LEVEL_UP_MOVE(11, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(14, MOVE_FIRE_SPIN),
LEVEL_UP_MOVE(16, MOVE_HEX),
LEVEL_UP_MOVE(18, MOVE_RAGE),
LEVEL_UP_MOVE(23, MOVE_FLING),
LEVEL_UP_MOVE(27, MOVE_SHADOW_BONE),
LEVEL_UP_MOVE(28, MOVE_STOMPING_TANTRUM),
LEVEL_UP_MOVE(31, MOVE_WILL_O_WISP),
LEVEL_UP_MOVE(38, MOVE_BONE_RUSH),
LEVEL_UP_MOVE(38, MOVE_BONEMERANG),
LEVEL_UP_MOVE(43, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(46, MOVE_THRASH),
LEVEL_UP_MOVE(56, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE(59, MOVE_RETALIATE),
LEVEL_UP_END
};

static const struct LevelUpMove sMeowthGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 4, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 8, MOVE_SCRATCH),
LEVEL_UP_MOVE(12, MOVE_PAY_DAY),
LEVEL_UP_MOVE(16, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(20, MOVE_TAUNT),
LEVEL_UP_MOVE(24, MOVE_SWAGGER),
LEVEL_UP_MOVE(29, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(32, MOVE_SCREECH),
LEVEL_UP_MOVE(36, MOVE_SLASH),
LEVEL_UP_MOVE(40, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(44, MOVE_THRASH),
LEVEL_UP_END
};

static const struct LevelUpMove sPonytaGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(10, MOVE_CONFUSION),
LEVEL_UP_MOVE(15, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(20, MOVE_AGILITY),
LEVEL_UP_MOVE(25, MOVE_PSYBEAM),
LEVEL_UP_MOVE(30, MOVE_STOMP),
LEVEL_UP_MOVE(35, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(41, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(45, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(50, MOVE_PSYCHIC),
LEVEL_UP_MOVE(55, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sRapidashGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE( 1, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE( 1, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE(15, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(20, MOVE_AGILITY),
LEVEL_UP_MOVE(25, MOVE_PSYBEAM),
LEVEL_UP_MOVE(30, MOVE_STOMP),
LEVEL_UP_MOVE(35, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(43, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(49, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE(56, MOVE_PSYCHIC),
LEVEL_UP_MOVE(63, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sSlowpokeGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 3, MOVE_GROWL),
LEVEL_UP_MOVE( 6, MOVE_ACID),
LEVEL_UP_MOVE( 9, MOVE_YAWN),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(15, MOVE_DISABLE),
LEVEL_UP_MOVE(18, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(21, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(27, MOVE_AMNESIA),
LEVEL_UP_MOVE(30, MOVE_SURF),
LEVEL_UP_MOVE(33, MOVE_SLACK_OFF),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(39, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(42, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(45, MOVE_HEAL_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sSlowbroGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_WITHDRAW),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 9, MOVE_YAWN),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(15, MOVE_DISABLE),
LEVEL_UP_MOVE(18, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(21, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(27, MOVE_AMNESIA),
LEVEL_UP_MOVE(30, MOVE_SURF),
LEVEL_UP_MOVE(33, MOVE_SLACK_OFF),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(39, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(42, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(45, MOVE_HEAL_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sFarfetchdGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_LEER),
LEVEL_UP_MOVE(10, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(15, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(20, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(25, MOVE_DETECT),
LEVEL_UP_MOVE(30, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(35, MOVE_DEFOG),
LEVEL_UP_MOVE(40, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(45, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(50, MOVE_SLAM),
LEVEL_UP_MOVE(55, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(60, MOVE_FINAL_GAMBIT),
LEVEL_UP_MOVE(65, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sWeezingGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE( 1, MOVE_STRANGE_STEAM),
LEVEL_UP_MOVE( 1, MOVE_DEFOG),
LEVEL_UP_MOVE( 1, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE( 1, MOVE_SMOG),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_POISON_GAS),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 1, MOVE_AROMATIC_MIST),
LEVEL_UP_MOVE(12, MOVE_CLEAR_SMOG),
LEVEL_UP_MOVE(16, MOVE_ASSURANCE),
LEVEL_UP_MOVE(20, MOVE_SLUDGE),
LEVEL_UP_MOVE(24, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(28, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(32, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE(38, MOVE_TOXIC),
LEVEL_UP_MOVE(44, MOVE_BELCH),
LEVEL_UP_MOVE(50, MOVE_EXPLOSION),
LEVEL_UP_MOVE(56, MOVE_MEMENTO),
LEVEL_UP_MOVE(62, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(68, MOVE_MISTY_TERRAIN),
LEVEL_UP_END
};

static const struct LevelUpMove sMrMimeGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_COPYCAT),
LEVEL_UP_MOVE( 1, MOVE_ENCORE),
LEVEL_UP_MOVE( 1, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_RECYCLE),
LEVEL_UP_MOVE( 1, MOVE_MIMIC),
LEVEL_UP_MOVE( 1, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE( 1, MOVE_REFLECT),
LEVEL_UP_MOVE( 1, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 1, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE( 1, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(16, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE(20, MOVE_ICY_WIND),
LEVEL_UP_MOVE(24, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(28, MOVE_PSYBEAM),
LEVEL_UP_MOVE(32, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(36, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(40, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(44, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(48, MOVE_PSYCHIC),
LEVEL_UP_MOVE(52, MOVE_TEETER_DANCE),
LEVEL_UP_END
};

static const struct LevelUpMove sArticunoGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE( 5, MOVE_CONFUSION),
LEVEL_UP_MOVE(10, MOVE_REFLECT),
LEVEL_UP_MOVE(15, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(20, MOVE_AGILITY),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(30, MOVE_TAILWIND),
LEVEL_UP_MOVE(35, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE(40, MOVE_RECOVER),
//LEVEL_UP_MOVE(45, MOVE_FREEZING_GLARE),
LEVEL_UP_MOVE(50, MOVE_DREAM_EATER),
LEVEL_UP_MOVE(55, MOVE_HURRICANE),
LEVEL_UP_MOVE(60, MOVE_MIND_READER),
LEVEL_UP_MOVE(65, MOVE_FUTURE_SIGHT),
LEVEL_UP_MOVE(70, MOVE_TRICK_ROOM),
LEVEL_UP_END
};

static const struct LevelUpMove sZapdosGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 5, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE(10, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(15, MOVE_PLUCK),
LEVEL_UP_MOVE(20, MOVE_AGILITY),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(30, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(35, MOVE_DRILL_PECK),
LEVEL_UP_MOVE(40, MOVE_QUICK_GUARD),
//LEVEL_UP_MOVE(45, MOVE_THUNDEROUS_KICK),
LEVEL_UP_MOVE(50, MOVE_BULK_UP),
LEVEL_UP_MOVE(55, MOVE_COUNTER),
LEVEL_UP_MOVE(60, MOVE_DETECT),
LEVEL_UP_MOVE(65, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(70, MOVE_REVERSAL),
LEVEL_UP_END
};

static const struct LevelUpMove sMoltresGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GUST),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_PAYBACK),
LEVEL_UP_MOVE(10, MOVE_SAFEGUARD),
LEVEL_UP_MOVE(15, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(20, MOVE_AGILITY),
LEVEL_UP_MOVE(25, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(30, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(35, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(40, MOVE_AFTER_YOU),
//LEVEL_UP_MOVE(45, MOVE_FIERY_WRATH),
LEVEL_UP_MOVE(50, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(55, MOVE_HURRICANE),
LEVEL_UP_MOVE(60, MOVE_ENDURE),
LEVEL_UP_MOVE(65, MOVE_MEMENTO),
LEVEL_UP_MOVE(70, MOVE_SKY_ATTACK),
LEVEL_UP_END
};

static const struct LevelUpMove sSlowkingGalarianLevelUpLearnset[] = {
//LEVEL_UP_MOVE( 0, MOVE_EERIE_SPELL),
//LEVEL_UP_MOVE( 1, MOVE_EERIE_SPELL),
LEVEL_UP_MOVE( 1, MOVE_POWER_GEM),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CURSE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 9, MOVE_YAWN),
LEVEL_UP_MOVE(12, MOVE_CONFUSION),
LEVEL_UP_MOVE(15, MOVE_DISABLE),
LEVEL_UP_MOVE(18, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(21, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(27, MOVE_AMNESIA),
LEVEL_UP_MOVE(30, MOVE_SURF),
LEVEL_UP_MOVE(33, MOVE_SLACK_OFF),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(39, MOVE_PSYCH_UP),
LEVEL_UP_MOVE(42, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(45, MOVE_HEAL_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sCorsolaGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 5, MOVE_ASTONISH),
LEVEL_UP_MOVE(10, MOVE_DISABLE),
LEVEL_UP_MOVE(15, MOVE_SPITE),
LEVEL_UP_MOVE(20, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(25, MOVE_HEX),
LEVEL_UP_MOVE(30, MOVE_CURSE),
LEVEL_UP_MOVE(35, MOVE_STRENGTH_SAP),
LEVEL_UP_MOVE(40, MOVE_POWER_GEM),
LEVEL_UP_MOVE(45, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(50, MOVE_GRUDGE),
LEVEL_UP_MOVE(55, MOVE_MIRROR_COAT),
LEVEL_UP_END
};

static const struct LevelUpMove sZigzagoonGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 3, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_LICK),
LEVEL_UP_MOVE( 9, MOVE_SNARL),
LEVEL_UP_MOVE(12, MOVE_HEADBUTT),
LEVEL_UP_MOVE(15, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(18, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(21, MOVE_REST),
LEVEL_UP_MOVE(24, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(30, MOVE_COUNTER),
LEVEL_UP_MOVE(33, MOVE_TAUNT),
LEVEL_UP_MOVE(36, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sLinooneGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SWITCHEROO),
LEVEL_UP_MOVE( 1, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE( 1, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 9, MOVE_SNARL),
LEVEL_UP_MOVE(12, MOVE_HEADBUTT),
LEVEL_UP_MOVE(15, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(18, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(23, MOVE_REST),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(33, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(38, MOVE_COUNTER),
LEVEL_UP_MOVE(43, MOVE_TAUNT),
LEVEL_UP_MOVE(48, MOVE_DOUBLE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sDarumakaGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 4, MOVE_TAUNT),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE(12, MOVE_AVALANCHE),
LEVEL_UP_MOVE(16, MOVE_WORK_UP),
LEVEL_UP_MOVE(20, MOVE_ICE_FANG),
LEVEL_UP_MOVE(24, MOVE_HEADBUTT),
LEVEL_UP_MOVE(28, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE(32, MOVE_UPROAR),
LEVEL_UP_MOVE(36, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(40, MOVE_BLIZZARD),
LEVEL_UP_MOVE(44, MOVE_THRASH),
LEVEL_UP_MOVE(48, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sDarmanitanGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE(12, MOVE_AVALANCHE),
LEVEL_UP_MOVE(16, MOVE_WORK_UP),
LEVEL_UP_MOVE(20, MOVE_ICE_FANG),
LEVEL_UP_MOVE(24, MOVE_HEADBUTT),
LEVEL_UP_MOVE(28, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE(32, MOVE_UPROAR),
LEVEL_UP_MOVE(38, MOVE_BELLY_DRUM),
LEVEL_UP_MOVE(44, MOVE_BLIZZARD),
LEVEL_UP_MOVE(50, MOVE_THRASH),
LEVEL_UP_MOVE(56, MOVE_SUPERPOWER),
LEVEL_UP_END
};

static const struct LevelUpMove sYamaskGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 4, MOVE_HAZE),
LEVEL_UP_MOVE( 8, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(12, MOVE_DISABLE),
LEVEL_UP_MOVE(16, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(20, MOVE_CRAFTY_SHIELD),
LEVEL_UP_MOVE(24, MOVE_HEX),
LEVEL_UP_MOVE(28, MOVE_MEAN_LOOK),
LEVEL_UP_MOVE(32, MOVE_SLAM),
LEVEL_UP_MOVE(36, MOVE_CURSE),
LEVEL_UP_MOVE(40, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(44, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(48, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(48, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(52, MOVE_DESTINY_BOND),
LEVEL_UP_END
};

static const struct LevelUpMove sStunfiskGalarianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MUD_SLAP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_METAL_CLAW),
LEVEL_UP_MOVE( 5, MOVE_ENDURE),
LEVEL_UP_MOVE(10, MOVE_MUD_SHOT),
LEVEL_UP_MOVE(15, MOVE_REVENGE),
LEVEL_UP_MOVE(20, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(25, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(30, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(35, MOVE_BOUNCE),
LEVEL_UP_MOVE(40, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(45, MOVE_SNAP_TRAP),
LEVEL_UP_MOVE(50, MOVE_FLAIL),
LEVEL_UP_MOVE(55, MOVE_FISSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sDeoxysAttackLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 7, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(15, MOVE_TELEPORT),
LEVEL_UP_MOVE(22, MOVE_TAUNT),
LEVEL_UP_MOVE(29, MOVE_PURSUIT),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(43, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(52, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(59, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(63, MOVE_COSMIC_POWER),
LEVEL_UP_MOVE(70, MOVE_ZAP_CANNON),
LEVEL_UP_MOVE(77, MOVE_PSYCHO_BOOST),
LEVEL_UP_MOVE(84, MOVE_HYPER_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sDeoxysDefenseLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 7, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(15, MOVE_TELEPORT),
LEVEL_UP_MOVE(22, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(29, MOVE_SPIKES),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(43, MOVE_SNATCH),
LEVEL_UP_MOVE(52, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(59, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(63, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(63, MOVE_AMNESIA),
LEVEL_UP_MOVE(70, MOVE_RECOVER),
LEVEL_UP_MOVE(77, MOVE_PSYCHO_BOOST),
LEVEL_UP_MOVE(84, MOVE_COUNTER),
LEVEL_UP_MOVE(84, MOVE_MIRROR_COAT),
LEVEL_UP_END
};

static const struct LevelUpMove sDeoxysSpeedLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_WRAP),
LEVEL_UP_MOVE( 7, MOVE_NIGHT_SHADE),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(22, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(29, MOVE_PURSUIT),
LEVEL_UP_MOVE(36, MOVE_PSYCHIC),
LEVEL_UP_MOVE(43, MOVE_SWIFT),
LEVEL_UP_MOVE(52, MOVE_PSYCHO_SHIFT),
LEVEL_UP_MOVE(59, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(63, MOVE_AGILITY),
LEVEL_UP_MOVE(70, MOVE_RECOVER),
LEVEL_UP_MOVE(77, MOVE_PSYCHO_BOOST),
LEVEL_UP_MOVE(84, MOVE_EXTREME_SPEED),
LEVEL_UP_END
};

static const struct LevelUpMove sWormadamSandyCloakLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE(10, MOVE_PROTECT),
LEVEL_UP_MOVE(15, MOVE_BUG_BITE),
LEVEL_UP_MOVE(20, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(23, MOVE_CONFUSION),
LEVEL_UP_MOVE(26, MOVE_ROCK_BLAST),
LEVEL_UP_MOVE(29, MOVE_HARDEN),
LEVEL_UP_MOVE(32, MOVE_PSYBEAM),
LEVEL_UP_MOVE(35, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(38, MOVE_FLAIL),
LEVEL_UP_MOVE(41, MOVE_ATTRACT),
LEVEL_UP_MOVE(44, MOVE_PSYCHIC),
LEVEL_UP_MOVE(47, MOVE_FISSURE),
LEVEL_UP_MOVE(50, MOVE_BUG_BUZZ),
LEVEL_UP_END
};

static const struct LevelUpMove sWormadamTrashCloakLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_METAL_BURST),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 1, MOVE_BUG_BITE),
LEVEL_UP_MOVE(10, MOVE_PROTECT),
LEVEL_UP_MOVE(15, MOVE_BUG_BITE),
LEVEL_UP_MOVE(20, MOVE_HIDDEN_POWER),
LEVEL_UP_MOVE(23, MOVE_CONFUSION),
LEVEL_UP_MOVE(26, MOVE_MIRROR_SHOT),
LEVEL_UP_MOVE(29, MOVE_METAL_SOUND),
LEVEL_UP_MOVE(32, MOVE_PSYBEAM),
LEVEL_UP_MOVE(35, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(38, MOVE_FLAIL),
LEVEL_UP_MOVE(41, MOVE_ATTRACT),
LEVEL_UP_MOVE(44, MOVE_PSYCHIC),
LEVEL_UP_MOVE(47, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(50, MOVE_BUG_BUZZ),
LEVEL_UP_END
};

static const struct LevelUpMove sRotomHeatLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_TRICK),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(10, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(24, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(25, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(25, MOVE_UPROAR),
LEVEL_UP_MOVE(29, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(32, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(37, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(38, MOVE_CHARGE),
LEVEL_UP_MOVE(43, MOVE_HEX),
LEVEL_UP_MOVE(45, MOVE_TRICK),
LEVEL_UP_MOVE(56, MOVE_DISCHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sRotomWashLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_TRICK),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(10, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(24, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(25, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(25, MOVE_UPROAR),
LEVEL_UP_MOVE(29, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(32, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(37, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(38, MOVE_CHARGE),
LEVEL_UP_MOVE(43, MOVE_HEX),
LEVEL_UP_MOVE(45, MOVE_TRICK),
LEVEL_UP_MOVE(56, MOVE_DISCHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sRotomFrostLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_TRICK),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(10, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(24, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(25, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(25, MOVE_UPROAR),
LEVEL_UP_MOVE(29, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(32, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(37, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(38, MOVE_CHARGE),
LEVEL_UP_MOVE(43, MOVE_HEX),
LEVEL_UP_MOVE(45, MOVE_TRICK),
LEVEL_UP_MOVE(56, MOVE_DISCHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sRotomFanLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_TRICK),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(10, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(24, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(25, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(25, MOVE_UPROAR),
LEVEL_UP_MOVE(29, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(32, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(37, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(38, MOVE_CHARGE),
LEVEL_UP_MOVE(43, MOVE_HEX),
LEVEL_UP_MOVE(45, MOVE_TRICK),
LEVEL_UP_MOVE(56, MOVE_DISCHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sRotomMowLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_DISCHARGE),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_TRICK),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 5, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(10, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(24, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(25, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(25, MOVE_UPROAR),
LEVEL_UP_MOVE(29, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(32, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(37, MOVE_SUBSTITUTE),
LEVEL_UP_MOVE(38, MOVE_CHARGE),
LEVEL_UP_MOVE(43, MOVE_HEX),
LEVEL_UP_MOVE(45, MOVE_TRICK),
LEVEL_UP_MOVE(56, MOVE_DISCHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sShayminSkyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE(10, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(19, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(28, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(37, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(46, MOVE_NATURAL_GIFT),
LEVEL_UP_MOVE(55, MOVE_WORRY_SEED),
LEVEL_UP_MOVE(64, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(73, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(82, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(91, MOVE_LEAF_STORM),
LEVEL_UP_MOVE(100, MOVE_SEED_FLARE),
LEVEL_UP_END
};

static const struct LevelUpMove sKyuremBlackLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE( 1, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(22, MOVE_SLASH),
LEVEL_UP_MOVE(27, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(29, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(40, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(43, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(43, MOVE_IMPRISON),
LEVEL_UP_MOVE(45, MOVE_FUSION_BOLT),
LEVEL_UP_MOVE(64, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(65, MOVE_FREEZE_SHOCK),
LEVEL_UP_MOVE(66, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(67, MOVE_BLIZZARD),
LEVEL_UP_MOVE(78, MOVE_OUTRAGE),
LEVEL_UP_MOVE(88, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sKyuremWhiteLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE( 1, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_RAGE),
LEVEL_UP_MOVE(15, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(22, MOVE_SLASH),
LEVEL_UP_MOVE(27, MOVE_ICE_BEAM),
LEVEL_UP_MOVE(29, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(40, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(43, MOVE_ENDEAVOR),
LEVEL_UP_MOVE(43, MOVE_IMPRISON),
LEVEL_UP_MOVE(45, MOVE_FUSION_FLARE),
LEVEL_UP_MOVE(64, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE(65, MOVE_ICE_BURN),
LEVEL_UP_MOVE(66, MOVE_HYPER_VOICE),
LEVEL_UP_MOVE(67, MOVE_BLIZZARD),
LEVEL_UP_MOVE(78, MOVE_OUTRAGE),
LEVEL_UP_MOVE(88, MOVE_SHEER_COLD),
LEVEL_UP_END
};

static const struct LevelUpMove sFloetteEternalFlowerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_VINE_WHIP),
LEVEL_UP_MOVE( 1, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 6, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE(10, MOVE_LUCKY_CHANT),
LEVEL_UP_MOVE(15, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(20, MOVE_WISH),
LEVEL_UP_MOVE(25, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE(27, MOVE_GRASSY_TERRAIN),
LEVEL_UP_MOVE(33, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE(38, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(43, MOVE_MISTY_TERRAIN),
LEVEL_UP_MOVE(46, MOVE_MOONBLAST),
LEVEL_UP_MOVE(51, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(58, MOVE_SOLAR_BEAM),
LEVEL_UP_END
};

static const struct LevelUpMove sMeowsticFemaleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FAKE_OUT),
LEVEL_UP_MOVE( 1, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_ME_FIRST),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 9, MOVE_CONFUSION),
LEVEL_UP_MOVE(12, MOVE_COVET),
LEVEL_UP_MOVE(19, MOVE_PSYBEAM),
LEVEL_UP_MOVE(19, MOVE_FAKE_OUT),
LEVEL_UP_MOVE(20, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(22, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(24, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(30, MOVE_STORED_POWER),
LEVEL_UP_MOVE(32, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(34, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(34, MOVE_REFLECT),
LEVEL_UP_MOVE(35, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE(40, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE(41, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE(45, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(47, MOVE_PSYCHIC),
LEVEL_UP_MOVE(55, MOVE_FUTURE_SIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sHoopaUnboundLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HYPERSPACE_FURY),
LEVEL_UP_MOVE( 1, MOVE_TRICK),
LEVEL_UP_MOVE( 1, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE( 1, MOVE_ALLY_SWITCH),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 6, MOVE_ASTONISH),
LEVEL_UP_MOVE(10, MOVE_MAGIC_COAT),
LEVEL_UP_MOVE(15, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(19, MOVE_PSYBEAM),
LEVEL_UP_MOVE(25, MOVE_SKILL_SWAP),
LEVEL_UP_MOVE(29, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(29, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(46, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(50, MOVE_WONDER_ROOM),
LEVEL_UP_MOVE(50, MOVE_TRICK_ROOM),
LEVEL_UP_MOVE(55, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(75, MOVE_PSYCHIC),
LEVEL_UP_MOVE(85, MOVE_HYPERSPACE_FURY),
LEVEL_UP_END
};

static const struct LevelUpMove sLycanrocMidnightLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_ENDURE),
LEVEL_UP_MOVE( 1, MOVE_REVERSAL),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(15, MOVE_HOWL),
LEVEL_UP_MOVE(17, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(23, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(29, MOVE_ROAR),
LEVEL_UP_MOVE(35, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(41, MOVE_CRUNCH),
LEVEL_UP_MOVE(45, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(45, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE(48, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(57, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sLycanrocDuskLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE( 0, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE( 1, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_ACCELEROCK),
LEVEL_UP_MOVE( 1, MOVE_QUICK_GUARD),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_COUNTER),
LEVEL_UP_MOVE( 1, MOVE_ENDURE),
LEVEL_UP_MOVE( 1, MOVE_REVERSAL),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 4, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(12, MOVE_ROCK_THROW),
LEVEL_UP_MOVE(15, MOVE_HOWL),
LEVEL_UP_MOVE(17, MOVE_BITE),
LEVEL_UP_MOVE(18, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(23, MOVE_ROCK_TOMB),
LEVEL_UP_MOVE(29, MOVE_ROAR),
LEVEL_UP_MOVE(35, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE(41, MOVE_CRUNCH),
LEVEL_UP_MOVE(45, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(45, MOVE_ROCK_CLIMB),
LEVEL_UP_MOVE(48, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE(57, MOVE_STONE_EDGE),
LEVEL_UP_END
};

static const struct LevelUpMove sToxtricityLowKeyLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE( 1, MOVE_BELCH),
LEVEL_UP_MOVE( 1, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 1, MOVE_ACID),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_NOBLE_ROAR),
LEVEL_UP_MOVE( 4, MOVE_CHARGE),
LEVEL_UP_MOVE( 8, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(12, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(16, MOVE_TAUNT),
LEVEL_UP_MOVE(20, MOVE_VENOM_DRENCH),
LEVEL_UP_MOVE(24, MOVE_SCREECH),
LEVEL_UP_MOVE(28, MOVE_SWAGGER),
LEVEL_UP_MOVE(32, MOVE_TOXIC),
LEVEL_UP_MOVE(36, MOVE_DISCHARGE),
LEVEL_UP_MOVE(40, MOVE_POISON_JAB),
LEVEL_UP_MOVE(44, MOVE_OVERDRIVE),
LEVEL_UP_MOVE(48, MOVE_BOOMBURST),
LEVEL_UP_MOVE(52, MOVE_MAGNETIC_FLUX),
LEVEL_UP_END
};

static const struct LevelUpMove sIndeedeeFemaleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 5, MOVE_BATON_PASS),
LEVEL_UP_MOVE(10, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(15, MOVE_PSYBEAM),
LEVEL_UP_MOVE(20, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(25, MOVE_FOLLOW_ME),
LEVEL_UP_MOVE(30, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(35, MOVE_PSYCHIC),
LEVEL_UP_MOVE(40, MOVE_CALM_MIND),
LEVEL_UP_MOVE(45, MOVE_GUARD_SPLIT),
LEVEL_UP_MOVE(50, MOVE_PSYCHIC_TERRAIN),
LEVEL_UP_MOVE(55, MOVE_HEALING_WISH),
LEVEL_UP_END
};

static const struct LevelUpMove sUrshifuRapidStrikeStyleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_SURGING_STRIKES),
LEVEL_UP_MOVE( 1, MOVE_SURGING_STRIKES),
LEVEL_UP_MOVE( 1, MOVE_AQUA_JET),
LEVEL_UP_MOVE( 1, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_ENDURE),
LEVEL_UP_MOVE( 1, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(12, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(16, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(20, MOVE_HEADBUTT),
LEVEL_UP_MOVE(24, MOVE_BRICK_BREAK),
LEVEL_UP_MOVE(28, MOVE_DETECT),
LEVEL_UP_MOVE(32, MOVE_BULK_UP),
LEVEL_UP_MOVE(36, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(40, MOVE_DYNAMIC_PUNCH),
LEVEL_UP_MOVE(44, MOVE_COUNTER),
LEVEL_UP_MOVE(48, MOVE_CLOSE_COMBAT),
LEVEL_UP_MOVE(52, MOVE_FOCUS_PUNCH),
LEVEL_UP_END
};

static const struct LevelUpMove sCalyrexIceRiderLevelUpLearnset[] = {
//LEVEL_UP_MOVE( 1, MOVE_GLACIAL_LANCE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_AVALANCHE),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 1, MOVE_TORMENT),
LEVEL_UP_MOVE( 1, MOVE_MIST),
LEVEL_UP_MOVE( 1, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 8, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(16, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(24, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(32, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(40, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(48, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(56, MOVE_PSYCHIC),
LEVEL_UP_MOVE(64, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(72, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(80, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(88, MOVE_FUTURE_SIGHT),
LEVEL_UP_END
};

static const struct LevelUpMove sCalyrexShadowRiderLevelUpLearnset[] = {
//LEVEL_UP_MOVE( 1, MOVE_ASTRAL_BARRAGE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE( 1, MOVE_HEX),
LEVEL_UP_MOVE( 1, MOVE_STOMP),
LEVEL_UP_MOVE( 1, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE( 1, MOVE_HAZE),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_DISABLE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_POUND),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_CONFUSION),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 8, MOVE_LIFE_DEW),
LEVEL_UP_MOVE(16, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE(24, MOVE_PSYSHOCK),
LEVEL_UP_MOVE(32, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(40, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(48, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE(56, MOVE_PSYCHIC),
LEVEL_UP_MOVE(64, MOVE_LEECH_SEED),
LEVEL_UP_MOVE(72, MOVE_HEAL_PULSE),
LEVEL_UP_MOVE(80, MOVE_SOLAR_BEAM),
LEVEL_UP_MOVE(88, MOVE_FUTURE_SIGHT),
LEVEL_UP_END
};

/*
static const struct LevelUpMove sPartnerPikachuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 9, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(14, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(22, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_FEINT),
LEVEL_UP_MOVE(26, MOVE_SLAM),
LEVEL_UP_MOVE(26, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_NUZZLE),
LEVEL_UP_MOVE(31, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_DISCHARGE),
LEVEL_UP_MOVE(42, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(45, MOVE_THUNDER),
LEVEL_UP_MOVE(50, MOVE_WILD_CHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sPartnerEeveeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE( 6, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(10, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(12, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(14, MOVE_GROWL),
LEVEL_UP_MOVE(17, MOVE_SWIFT),
LEVEL_UP_MOVE(20, MOVE_REFRESH),
LEVEL_UP_MOVE(22, MOVE_COVET),
LEVEL_UP_MOVE(23, MOVE_BITE),
LEVEL_UP_MOVE(30, MOVE_COPYCAT),
LEVEL_UP_MOVE(31, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(34, MOVE_BATON_PASS),
LEVEL_UP_MOVE(35, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(36, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(37, MOVE_CHARM),
LEVEL_UP_MOVE(41, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(48, MOVE_LAST_RESORT),
LEVEL_UP_MOVE(49, MOVE_TRUMP_CARD),
LEVEL_UP_END
};

static const struct LevelUpMove sSpikyEaredPichuLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_VOLT_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_SWAGGER),
LEVEL_UP_MOVE( 1, MOVE_PAIN_SPLIT),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 4, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE(10, MOVE_SWEET_KISS),
LEVEL_UP_MOVE(12, MOVE_NUZZLE),
LEVEL_UP_MOVE(12, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE(16, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(20, MOVE_CHARM),
LEVEL_UP_END
};

static const struct LevelUpMove sPikachuPopStarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_DRAINING_KISS),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 9, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(14, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(22, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_FEINT),
LEVEL_UP_MOVE(26, MOVE_SLAM),
LEVEL_UP_MOVE(26, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_NUZZLE),
LEVEL_UP_MOVE(31, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_DISCHARGE),
LEVEL_UP_MOVE(42, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(45, MOVE_THUNDER),
LEVEL_UP_MOVE(50, MOVE_WILD_CHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sPikachuPhdLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ELECTRIC_TERRAIN),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 9, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(14, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(22, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_FEINT),
LEVEL_UP_MOVE(26, MOVE_SLAM),
LEVEL_UP_MOVE(26, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_NUZZLE),
LEVEL_UP_MOVE(31, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_DISCHARGE),
LEVEL_UP_MOVE(42, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(45, MOVE_THUNDER),
LEVEL_UP_MOVE(50, MOVE_WILD_CHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sPikachuLibreLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_FLYING_PRESS),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 9, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(14, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(22, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_FEINT),
LEVEL_UP_MOVE(26, MOVE_SLAM),
LEVEL_UP_MOVE(26, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_NUZZLE),
LEVEL_UP_MOVE(31, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_DISCHARGE),
LEVEL_UP_MOVE(42, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(45, MOVE_THUNDER),
LEVEL_UP_MOVE(50, MOVE_WILD_CHARGE),
LEVEL_UP_END
};


static const struct LevelUpMove sPikachuBelleLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 9, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(14, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(22, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_FEINT),
LEVEL_UP_MOVE(26, MOVE_SLAM),
LEVEL_UP_MOVE(26, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_NUZZLE),
LEVEL_UP_MOVE(31, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_DISCHARGE),
LEVEL_UP_MOVE(42, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(45, MOVE_THUNDER),
LEVEL_UP_MOVE(50, MOVE_WILD_CHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sPikachuRockStarLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_METEOR_MASH),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 1, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 1, MOVE_NUZZLE),
LEVEL_UP_MOVE( 1, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE( 1, MOVE_CHARM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 4, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 5, MOVE_GROWL),
LEVEL_UP_MOVE( 7, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE),
LEVEL_UP_MOVE( 9, MOVE_DOUBLE_KICK),
LEVEL_UP_MOVE(10, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(14, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(15, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(22, MOVE_SPARK),
LEVEL_UP_MOVE(23, MOVE_FEINT),
LEVEL_UP_MOVE(26, MOVE_SLAM),
LEVEL_UP_MOVE(26, MOVE_SWIFT),
LEVEL_UP_MOVE(27, MOVE_NUZZLE),
LEVEL_UP_MOVE(31, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(35, MOVE_DISCHARGE),
LEVEL_UP_MOVE(42, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(45, MOVE_THUNDER),
LEVEL_UP_MOVE(50, MOVE_WILD_CHARGE),
LEVEL_UP_END
};
*/
//四个还原化石精灵
static const struct LevelUpMove sGalarzoltLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 7, MOVE_CHARGE),
LEVEL_UP_MOVE(14, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(21, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_PLUCK),
LEVEL_UP_MOVE(35, MOVE_DRAGON_TAIL),
LEVEL_UP_MOVE(42, MOVE_STOMP),
LEVEL_UP_MOVE(49, MOVE_SLAM),
LEVEL_UP_MOVE(56, MOVE_DISCHARGE),
LEVEL_UP_MOVE(63, MOVE_BOLT_BEAK),
LEVEL_UP_MOVE(70, MOVE_WILD_CHARGE),
LEVEL_UP_END
};

static const struct LevelUpMove sGalardracoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_DANCE),
LEVEL_UP_MOVE( 7, MOVE_PROTECT),
LEVEL_UP_MOVE(14, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(21, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_BITE),
LEVEL_UP_MOVE(35, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(40, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(42, MOVE_STOMP),
LEVEL_UP_MOVE(49, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(56, MOVE_CRUNCH),
LEVEL_UP_MOVE(70, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(77, MOVE_DRAGON_RUSH),
LEVEL_UP_END
};

static const struct LevelUpMove sGalarvishLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 7, MOVE_PROTECT),
LEVEL_UP_MOVE(14, MOVE_BRUTAL_SWING),
LEVEL_UP_MOVE(21, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(28, MOVE_BITE),
LEVEL_UP_MOVE(42, MOVE_STOMP),
LEVEL_UP_MOVE(49, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(56, MOVE_CRUNCH),
LEVEL_UP_MOVE(63, MOVE_FISHIOUS_REND),
LEVEL_UP_MOVE(70, MOVE_ICE_FANG),
LEVEL_UP_END
};

static const struct LevelUpMove sGalararctoLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 7, MOVE_PROTECT),
LEVEL_UP_MOVE(14, MOVE_ICY_WIND),
LEVEL_UP_MOVE(21, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE(35, MOVE_AURORA_VEIL),
LEVEL_UP_MOVE(40, MOVE_EARTHQUAKE),
LEVEL_UP_MOVE(42, MOVE_FREEZE_DRY),
LEVEL_UP_MOVE(49, MOVE_SUPER_FANG),
LEVEL_UP_MOVE(70, MOVE_ICICLE_CRASH),
LEVEL_UP_MOVE(77, MOVE_BLIZZARD),
LEVEL_UP_END
};

//洗翠
static const struct LevelUpMove sWyrdeerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE( 0, MOVE_IRON_TAIL),
LEVEL_UP_MOVE( 0, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE( 0, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE( 0, MOVE_HIGH_HORSEPOWER),
LEVEL_UP_MOVE( 0, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE( 0, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 1, MOVE_ME_FIRST),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 3, MOVE_LEER),
LEVEL_UP_MOVE( 7, MOVE_ASTONISH),
LEVEL_UP_MOVE(11, MOVE_HYPNOSIS),
LEVEL_UP_MOVE(14, MOVE_STOMP),
LEVEL_UP_MOVE(18, MOVE_SAND_ATTACK),
LEVEL_UP_MOVE(24, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_CONFUSE_RAY),
LEVEL_UP_MOVE(29, MOVE_CALM_MIND),
LEVEL_UP_MOVE(32, MOVE_ROLE_PLAY),
LEVEL_UP_MOVE(38, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE(43, MOVE_JUMP_KICK),
LEVEL_UP_MOVE(47, MOVE_IMPRISON),
LEVEL_UP_MOVE(50, MOVE_CAPTIVATE),
LEVEL_UP_MOVE(54, MOVE_ME_FIRST),
LEVEL_UP_END
};

static const struct LevelUpMove sKleavorLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE( 0, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 0, MOVE_STONE_EDGE),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 1, MOVE_BULLET_PUNCH),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE( 1, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 9, MOVE_PURSUIT),
LEVEL_UP_MOVE(12, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(13, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE(18, MOVE_AGILITY),
LEVEL_UP_MOVE(19, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(22, MOVE_DOUBLE_TEAM),
LEVEL_UP_MOVE(27, MOVE_SLASH),
LEVEL_UP_MOVE(27, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(33, MOVE_RAZOR_WIND),
LEVEL_UP_MOVE(35, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(38, MOVE_DOUBLE_HIT),
LEVEL_UP_MOVE(40, MOVE_X_SCISSOR),
LEVEL_UP_MOVE(44, MOVE_LASER_FOCUS),
LEVEL_UP_MOVE(45, MOVE_IRON_HEAD),
LEVEL_UP_MOVE(45, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(51, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(61, MOVE_FEINT),
LEVEL_UP_END
};

static const struct LevelUpMove sUrsalunaLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 0, MOVE_BULK_UP),
LEVEL_UP_MOVE( 0, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 0, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 0, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_HIGH_HORSEPOWER),
LEVEL_UP_MOVE( 0, MOVE_STONE_EDGE),
LEVEL_UP_MOVE( 0, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 1, MOVE_HAMMER_ARM),
LEVEL_UP_MOVE( 1, MOVE_COVET),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_LICK),
LEVEL_UP_MOVE( 1, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE( 1, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE( 7, MOVE_LICK),
LEVEL_UP_MOVE( 9, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(16, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(19, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(22, MOVE_SWEET_SCENT),
LEVEL_UP_MOVE(25, MOVE_PLAY_NICE),
LEVEL_UP_MOVE(30, MOVE_SLASH),
LEVEL_UP_MOVE(38, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(43, MOVE_REST),
LEVEL_UP_MOVE(48, MOVE_SNORE),
LEVEL_UP_MOVE(57, MOVE_THRASH),
LEVEL_UP_MOVE(67, MOVE_HAMMER_ARM),
LEVEL_UP_END
};

static const struct LevelUpMove sBasculegionLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE( 0, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE( 0, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 0, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 0, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 3, MOVE_UPROAR),
LEVEL_UP_MOVE( 4, MOVE_TACKLE),
LEVEL_UP_MOVE(12, MOVE_AQUA_JET),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(14, MOVE_HEADBUTT),
LEVEL_UP_MOVE(14, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(26, MOVE_CRUNCH),
LEVEL_UP_MOVE(26, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_FLAIL),
LEVEL_UP_MOVE(29, MOVE_SOAK),
LEVEL_UP_MOVE(30, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(34, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(41, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(44, MOVE_FINAL_GAMBIT),
LEVEL_UP_MOVE(50, MOVE_THRASH),
LEVEL_UP_MOVE(53, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sSneaslerLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 0, MOVE_BULK_UP),
LEVEL_UP_MOVE( 0, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_X_SCISSOR),
LEVEL_UP_MOVE( 0, MOVE_POISON_JAB),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 0, MOVE_IRON_TAIL),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_SNARL),
LEVEL_UP_MOVE( 1, MOVE_REVENGE),
LEVEL_UP_MOVE( 1, MOVE_ASSURANCE),
LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_BEAT_UP),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 1, MOVE_ICE_SHARD),
LEVEL_UP_MOVE( 1, MOVE_EMBARGO),
LEVEL_UP_MOVE( 8, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(11, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(21, MOVE_ICY_WIND),
LEVEL_UP_MOVE(22, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(26, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(30, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(31, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(34, MOVE_SCREECH),
LEVEL_UP_MOVE(36, MOVE_FLING),
LEVEL_UP_MOVE(40, MOVE_SNATCH),
LEVEL_UP_MOVE(44, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(44, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(54, MOVE_DARK_PULSE),
LEVEL_UP_END
};

static const struct LevelUpMove sOverqwilLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_BALL),
LEVEL_UP_MOVE( 0, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 0, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE( 0, MOVE_X_SCISSOR),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 0, MOVE_DARK_PULSE),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FELL_STINGER),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_SPIKES),
LEVEL_UP_MOVE( 7, MOVE_HARDEN),
LEVEL_UP_MOVE(11, MOVE_WATER_GUN),
LEVEL_UP_MOVE(11, MOVE_MINIMIZE),
LEVEL_UP_MOVE(13, MOVE_BUBBLE),
LEVEL_UP_MOVE(17, MOVE_ROLLOUT),
LEVEL_UP_MOVE(20, MOVE_SPIKES),
LEVEL_UP_MOVE(26, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(28, MOVE_REVENGE),
LEVEL_UP_MOVE(29, MOVE_BRINE),
LEVEL_UP_MOVE(32, MOVE_STOCKPILE),
LEVEL_UP_MOVE(32, MOVE_SPIT_UP),
LEVEL_UP_MOVE(33, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(33, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(42, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(45, MOVE_POISON_JAB),
LEVEL_UP_MOVE(49, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(52, MOVE_TOXIC),
LEVEL_UP_MOVE(54, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(57, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(60, MOVE_ACUPRESSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sEnamorusLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE( 0, MOVE_MYSTICAL_FIRE),
LEVEL_UP_MOVE( 0, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 0, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 0, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 5, MOVE_AIR_SLASH),
LEVEL_UP_MOVE( 5, MOVE_FAIRY_WIND),
LEVEL_UP_MOVE( 10, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE( 10, MOVE_AURA_SPHERE),
LEVEL_UP_MOVE( 15, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE( 15, MOVE_TRI_ATTACK),
LEVEL_UP_MOVE( 20, MOVE_CHARM),
LEVEL_UP_MOVE( 20, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 25, MOVE_YAWN),
LEVEL_UP_MOVE( 25, MOVE_METRONOME),
LEVEL_UP_MOVE( 30, MOVE_AFTER_YOU),
LEVEL_UP_MOVE( 30, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 35, MOVE_SAFEGUARD),
LEVEL_UP_MOVE( 35, MOVE_FOLLOW_ME),
LEVEL_UP_MOVE( 40, MOVE_BATON_PASS),
LEVEL_UP_MOVE( 40, MOVE_LAST_RESORT),
LEVEL_UP_MOVE( 50, MOVE_WISH),
LEVEL_UP_MOVE( 50, MOVE_GROWL),
LEVEL_UP_MOVE( 60, MOVE_POUND),
LEVEL_UP_MOVE( 60, MOVE_SWEET_KISS),
LEVEL_UP_MOVE( 68, MOVE_LIFE_DEW),
LEVEL_UP_END
};

static const struct LevelUpMove sGrowlitheHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 0, MOVE_IRON_TAIL),
LEVEL_UP_MOVE( 0, MOVE_SNARL),
LEVEL_UP_MOVE( 0, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE( 0, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_ROAR),
LEVEL_UP_MOVE( 4, MOVE_HOWL),
LEVEL_UP_MOVE( 6, MOVE_EMBER),
LEVEL_UP_MOVE( 8, MOVE_BITE),
LEVEL_UP_MOVE( 9, MOVE_LEER),
LEVEL_UP_MOVE(12, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(16, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(18, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(23, MOVE_FIRE_FANG),
LEVEL_UP_MOVE(28, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(28, MOVE_FLAME_BURST),
LEVEL_UP_MOVE(30, MOVE_AGILITY),
LEVEL_UP_MOVE(31, MOVE_RETALIATE),
LEVEL_UP_MOVE(32, MOVE_REVERSAL),
LEVEL_UP_MOVE(36, MOVE_CRUNCH),
LEVEL_UP_MOVE(36, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(40, MOVE_HEAT_WAVE),
LEVEL_UP_MOVE(40, MOVE_OUTRAGE),
LEVEL_UP_MOVE(44, MOVE_ROAR),
LEVEL_UP_MOVE(45, MOVE_PLAY_ROUGH),
LEVEL_UP_END
};

static const struct LevelUpMove sArcanineHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 0, MOVE_IRON_TAIL),
LEVEL_UP_MOVE( 0, MOVE_SNARL),
LEVEL_UP_MOVE( 0, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE( 0, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 0, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 0, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 0, MOVE_STONE_EDGE),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_EXTREME_SPEED),
LEVEL_UP_MOVE( 1, MOVE_BURN_UP),
LEVEL_UP_MOVE( 1, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_AGILITY),
LEVEL_UP_MOVE( 1, MOVE_FIRE_FANG),
LEVEL_UP_MOVE( 1, MOVE_RETALIATE),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE( 1, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE( 1, MOVE_ROAR),
LEVEL_UP_MOVE( 1, MOVE_PLAY_ROUGH),
LEVEL_UP_MOVE( 1, MOVE_REVERSAL),
LEVEL_UP_MOVE( 1, MOVE_FLARE_BLITZ),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HOWL),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_FANG),
LEVEL_UP_MOVE( 1, MOVE_ODOR_SLEUTH),
LEVEL_UP_MOVE(38, MOVE_EXTREME_SPEED),
LEVEL_UP_END
};

static const struct LevelUpMove sVoltorbHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_BALL),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 0, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE( 0, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 0, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE( 0, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 5, MOVE_TACKLE),
LEVEL_UP_MOVE( 7, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE( 8, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(12, MOVE_SPARK),
LEVEL_UP_MOVE(16, MOVE_SCREECH),
LEVEL_UP_MOVE(17, MOVE_ROLLOUT),
LEVEL_UP_MOVE(21, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(24, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(25, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(27, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(30, MOVE_SWIFT),
LEVEL_UP_MOVE(31, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(36, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(37, MOVE_DISCHARGE),
LEVEL_UP_MOVE(43, MOVE_EXPLOSION),
LEVEL_UP_MOVE(43, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(46, MOVE_MIRROR_COAT),
LEVEL_UP_END
};

static const struct LevelUpMove sElectrodeHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_BALL),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 0, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 0, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE( 0, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE( 1, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 1, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE( 1, MOVE_MAGNETIC_FLUX),
LEVEL_UP_MOVE( 1, MOVE_CHARGE),
LEVEL_UP_MOVE( 1, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE( 1, MOVE_SPARK),
LEVEL_UP_MOVE( 1, MOVE_SCREECH),
LEVEL_UP_MOVE( 1, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE( 1, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE( 1, MOVE_VOLT_SWITCH),
LEVEL_UP_MOVE( 5, MOVE_TACKLE),
LEVEL_UP_MOVE( 6, MOVE_EERIE_IMPULSE),
LEVEL_UP_MOVE( 8, MOVE_SONIC_BOOM),
LEVEL_UP_MOVE( 9, MOVE_THUNDER_SHOCK),
LEVEL_UP_MOVE(12, MOVE_SPARK),
LEVEL_UP_MOVE(16, MOVE_SCREECH),
LEVEL_UP_MOVE(17, MOVE_ROLLOUT),
LEVEL_UP_MOVE(21, MOVE_CHARGE_BEAM),
LEVEL_UP_MOVE(25, MOVE_LIGHT_SCREEN),
LEVEL_UP_MOVE(25, MOVE_ELECTRO_BALL),
LEVEL_UP_MOVE(27, MOVE_SELF_DESTRUCT),
LEVEL_UP_MOVE(32, MOVE_SWIFT),
LEVEL_UP_MOVE(32, MOVE_SIGNAL_BEAM),
LEVEL_UP_MOVE(36, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE(41, MOVE_MAGNET_RISE),
LEVEL_UP_MOVE(41, MOVE_DISCHARGE),
LEVEL_UP_MOVE(43, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE(45, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(50, MOVE_GYRO_BALL),
LEVEL_UP_MOVE(52, MOVE_EXPLOSION),
LEVEL_UP_MOVE(55, MOVE_DARK_PULSE),
LEVEL_UP_MOVE(57, MOVE_MIRROR_COAT),
LEVEL_UP_MOVE(60, MOVE_THUNDER),
LEVEL_UP_MOVE(65, MOVE_ZAP_CANNON),
LEVEL_UP_END
};

static const struct LevelUpMove sTyphlosionHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE( 0, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 0, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 0, MOVE_IRON_TAIL),
LEVEL_UP_MOVE( 0, MOVE_MYSTICAL_FIRE),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_WILD_CHARGE),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 1, MOVE_ERUPTION),
LEVEL_UP_MOVE( 1, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 1, MOVE_ANCIENT_POWER),
LEVEL_UP_MOVE( 1, MOVE_EXTRASENSORY),
LEVEL_UP_MOVE( 1, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE( 1, MOVE_GYRO_BALL),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE( 1, MOVE_EMBER),
LEVEL_UP_MOVE( 5, MOVE_SMOKESCREEN),
LEVEL_UP_MOVE(10, MOVE_EMBER),
LEVEL_UP_MOVE(14, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(22, MOVE_FLAME_WHEEL),
LEVEL_UP_MOVE(24, MOVE_DEFENSE_CURL),
LEVEL_UP_MOVE(33, MOVE_SWIFT),
LEVEL_UP_MOVE(35, MOVE_FLAME_CHARGE),
LEVEL_UP_MOVE(40, MOVE_LAVA_PLUME),
LEVEL_UP_MOVE(40, MOVE_NATURE_POWER),
LEVEL_UP_MOVE(45, MOVE_SHOCK_WAVE),
LEVEL_UP_MOVE(48, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE(56, MOVE_INFERNO),
LEVEL_UP_MOVE(56, MOVE_ROLLOUT),
LEVEL_UP_MOVE(56, MOVE_FOCUS_BLAST),
LEVEL_UP_MOVE(64, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(70, MOVE_ERUPTION),
LEVEL_UP_MOVE(74, MOVE_BURN_UP),
LEVEL_UP_END
};

static const struct LevelUpMove sQwilfishHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_BALL),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 0, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 0, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE( 0, MOVE_X_SCISSOR),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 0, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 0, MOVE_DARK_PULSE),
LEVEL_UP_MOVE( 1, MOVE_POISON_STING),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_FELL_STINGER),
LEVEL_UP_MOVE( 1, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE( 1, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_SPIKES),
LEVEL_UP_MOVE( 7, MOVE_HARDEN),
LEVEL_UP_MOVE(11, MOVE_WATER_GUN),
LEVEL_UP_MOVE(11, MOVE_MINIMIZE),
LEVEL_UP_MOVE(13, MOVE_BUBBLE),
LEVEL_UP_MOVE(17, MOVE_ROLLOUT),
LEVEL_UP_MOVE(20, MOVE_SPIKES),
LEVEL_UP_MOVE(26, MOVE_TOXIC_SPIKES),
LEVEL_UP_MOVE(28, MOVE_REVENGE),
LEVEL_UP_MOVE(29, MOVE_BRINE),
LEVEL_UP_MOVE(32, MOVE_STOCKPILE),
LEVEL_UP_MOVE(32, MOVE_SPIT_UP),
LEVEL_UP_MOVE(33, MOVE_FELL_STINGER),
LEVEL_UP_MOVE(33, MOVE_PIN_MISSILE),
LEVEL_UP_MOVE(42, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(45, MOVE_POISON_JAB),
LEVEL_UP_MOVE(49, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(52, MOVE_TOXIC),
LEVEL_UP_MOVE(54, MOVE_HYDRO_PUMP),
LEVEL_UP_MOVE(57, MOVE_DESTINY_BOND),
LEVEL_UP_MOVE(60, MOVE_ACUPRESSURE),
LEVEL_UP_END
};

static const struct LevelUpMove sSneaselHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_ICE_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_X_SCISSOR),
LEVEL_UP_MOVE( 0, MOVE_POISON_JAB),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 0, MOVE_IRON_TAIL),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 0, MOVE_SNARL),
LEVEL_UP_MOVE( 0, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 0, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE( 0, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 0, MOVE_DARK_PULSE),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TAUNT),
LEVEL_UP_MOVE( 6, MOVE_TAUNT),
LEVEL_UP_MOVE( 9, MOVE_QUICK_ATTACK),
LEVEL_UP_MOVE(13, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(23, MOVE_ICY_WIND),
LEVEL_UP_MOVE(23, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(30, MOVE_METAL_CLAW),
LEVEL_UP_MOVE(30, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(31, MOVE_SCREECH),
LEVEL_UP_MOVE(32, MOVE_AGILITY),
LEVEL_UP_MOVE(38, MOVE_BEAT_UP),
LEVEL_UP_MOVE(40, MOVE_SNATCH),
LEVEL_UP_MOVE(44, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(45, MOVE_SLASH),
LEVEL_UP_MOVE(48, MOVE_ICE_SHARD),
LEVEL_UP_END
};

static const struct LevelUpMove sSamurottHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_POISON_JAB),
LEVEL_UP_MOVE( 0, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE( 0, MOVE_X_SCISSOR),
LEVEL_UP_MOVE( 0, MOVE_IRON_TAIL),
LEVEL_UP_MOVE( 0, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 0, MOVE_DARK_PULSE),
LEVEL_UP_MOVE( 1, MOVE_SLASH),
LEVEL_UP_MOVE( 1, MOVE_MEGAHORN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_WATER_SPORT),
LEVEL_UP_MOVE( 5, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 7, MOVE_WATER_GUN),
LEVEL_UP_MOVE(11, MOVE_WATER_SPORT),
LEVEL_UP_MOVE(13, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE(17, MOVE_RAZOR_SHELL),
LEVEL_UP_MOVE(20, MOVE_FURY_CUTTER),
LEVEL_UP_MOVE(25, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(28, MOVE_REVENGE),
LEVEL_UP_MOVE(33, MOVE_AQUA_JET),
LEVEL_UP_MOVE(36, MOVE_SLASH),
LEVEL_UP_MOVE(38, MOVE_ENCORE),
LEVEL_UP_MOVE(45, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(50, MOVE_RETALIATE),
LEVEL_UP_MOVE(57, MOVE_SWORDS_DANCE),
LEVEL_UP_MOVE(62, MOVE_HYDRO_PUMP),
LEVEL_UP_END
};

static const struct LevelUpMove sLilligantHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_BABY_DOLL_EYES),
LEVEL_UP_MOVE( 0, MOVE_DRAIN_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_POISON_JAB),
LEVEL_UP_MOVE( 0, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 1, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE( 1, MOVE_PETAL_BLIZZARD),
LEVEL_UP_MOVE( 1, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE( 1, MOVE_MEGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE( 1, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 1, MOVE_SLEEP_POWDER),
LEVEL_UP_MOVE( 1, MOVE_GIGA_DRAIN),
LEVEL_UP_MOVE( 1, MOVE_LEECH_SEED),
LEVEL_UP_MOVE( 1, MOVE_AFTER_YOU),
LEVEL_UP_MOVE( 1, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 1, MOVE_SYNTHESIS),
LEVEL_UP_MOVE( 1, MOVE_SUNNY_DAY),
LEVEL_UP_MOVE( 1, MOVE_ENTRAINMENT),
LEVEL_UP_MOVE( 1, MOVE_LEAF_STORM),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_GROWTH),
LEVEL_UP_MOVE( 1, MOVE_HELPING_HAND),
LEVEL_UP_MOVE( 1, MOVE_STUN_SPORE),
LEVEL_UP_MOVE(10, MOVE_TEETER_DANCE),
LEVEL_UP_MOVE(28, MOVE_QUIVER_DANCE),
LEVEL_UP_MOVE(46, MOVE_PETAL_DANCE),
LEVEL_UP_MOVE(50, MOVE_PETAL_BLIZZARD),
LEVEL_UP_END
};

static const struct LevelUpMove sBasculinHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE( 0, MOVE_ICY_WIND),
LEVEL_UP_MOVE( 0, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_TAIL_WHIP),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_FLAIL),
LEVEL_UP_MOVE( 3, MOVE_UPROAR),
LEVEL_UP_MOVE( 4, MOVE_TACKLE),
LEVEL_UP_MOVE(12, MOVE_AQUA_JET),
LEVEL_UP_MOVE(12, MOVE_BITE),
LEVEL_UP_MOVE(14, MOVE_HEADBUTT),
LEVEL_UP_MOVE(14, MOVE_CHIP_AWAY),
LEVEL_UP_MOVE(26, MOVE_CRUNCH),
LEVEL_UP_MOVE(26, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_FLAIL),
LEVEL_UP_MOVE(29, MOVE_SOAK),
LEVEL_UP_MOVE(30, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(34, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(41, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(44, MOVE_FINAL_GAMBIT),
LEVEL_UP_MOVE(50, MOVE_THRASH),
LEVEL_UP_MOVE(53, MOVE_HEAD_SMASH),
LEVEL_UP_END
};

static const struct LevelUpMove sZoruaHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 0, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE( 0, MOVE_SNARL),
LEVEL_UP_MOVE( 0, MOVE_DARK_PULSE),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 5, MOVE_PURSUIT),
LEVEL_UP_MOVE( 8, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(12, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(19, MOVE_TORMENT),
LEVEL_UP_MOVE(22, MOVE_TAUNT),
LEVEL_UP_MOVE(24, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(34, MOVE_AGILITY),
LEVEL_UP_MOVE(37, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(41, MOVE_EMBARGO),
LEVEL_UP_MOVE(45, MOVE_IMPRISON),
LEVEL_UP_MOVE(45, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(46, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(49, MOVE_NIGHT_DAZE),
LEVEL_UP_END
};

static const struct LevelUpMove sZoroarkHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_CALM_MIND),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 0, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE( 0, MOVE_SNARL),
LEVEL_UP_MOVE( 0, MOVE_DARK_PULSE),
LEVEL_UP_MOVE( 0, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE( 0, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE( 1, MOVE_U_TURN),
LEVEL_UP_MOVE( 1, MOVE_SCRATCH),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_TORMENT),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_NIGHT_DAZE),
LEVEL_UP_MOVE( 1, MOVE_IMPRISON),
LEVEL_UP_MOVE( 1, MOVE_PURSUIT),
LEVEL_UP_MOVE( 5, MOVE_PURSUIT),
LEVEL_UP_MOVE( 9, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(12, MOVE_FURY_SWIPES),
LEVEL_UP_MOVE(17, MOVE_FAINT_ATTACK),
LEVEL_UP_MOVE(18, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(22, MOVE_TAUNT),
LEVEL_UP_MOVE(24, MOVE_KNOCK_OFF),
LEVEL_UP_MOVE(28, MOVE_FAKE_TEARS),
LEVEL_UP_MOVE(30, MOVE_NIGHT_SLASH),
LEVEL_UP_MOVE(34, MOVE_TORMENT),
LEVEL_UP_MOVE(36, MOVE_AGILITY),
LEVEL_UP_MOVE(42, MOVE_FOUL_PLAY),
LEVEL_UP_MOVE(44, MOVE_EMBARGO),
LEVEL_UP_MOVE(49, MOVE_PUNISHMENT),
LEVEL_UP_MOVE(50, MOVE_IMPRISON),
LEVEL_UP_MOVE(53, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(55, MOVE_NIGHT_DAZE),
LEVEL_UP_END
};

static const struct LevelUpMove sBraviaryHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE( 0, MOVE_BULK_UP),
LEVEL_UP_MOVE( 0, MOVE_ZEN_HEADBUTT),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 0, MOVE_MYSTICAL_FIRE),
LEVEL_UP_MOVE( 0, MOVE_DAZZLING_GLEAM),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_PSYCHIC),
LEVEL_UP_MOVE( 1, MOVE_SUPERPOWER),
LEVEL_UP_MOVE( 1, MOVE_SKY_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 1, MOVE_LEER),
LEVEL_UP_MOVE( 1, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE( 1, MOVE_WING_ATTACK),
LEVEL_UP_MOVE( 1, MOVE_THRASH),
LEVEL_UP_MOVE( 1, MOVE_BRAVE_BIRD),
LEVEL_UP_MOVE( 1, MOVE_WHIRLWIND),
LEVEL_UP_MOVE( 1, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE( 5, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(10, MOVE_WING_ATTACK),
LEVEL_UP_MOVE(14, MOVE_HONE_CLAWS),
LEVEL_UP_MOVE(21, MOVE_SCARY_FACE),
LEVEL_UP_MOVE(26, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE(28, MOVE_TAILWIND),
LEVEL_UP_MOVE(31, MOVE_SLASH),
LEVEL_UP_MOVE(46, MOVE_CRUSH_CLAW),
LEVEL_UP_MOVE(46, MOVE_DEFOG),
LEVEL_UP_MOVE(48, MOVE_AIR_SLASH),
LEVEL_UP_MOVE(50, MOVE_WHIRLWIND),
LEVEL_UP_MOVE(50, MOVE_SKY_DROP),
LEVEL_UP_MOVE(51, MOVE_SUPERPOWER),
LEVEL_UP_MOVE(70, MOVE_THRASH),
LEVEL_UP_MOVE(70, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sSliggooHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 0, MOVE_IRON_TAIL),
LEVEL_UP_MOVE( 0, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE( 0, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 0, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE( 0, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 0, MOVE_DRACO_METEOR),
LEVEL_UP_MOVE( 0, MOVE_STEEL_BEAM),
LEVEL_UP_MOVE( 1, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE(12, MOVE_PROTECT),
LEVEL_UP_MOVE(13, MOVE_BIDE),
LEVEL_UP_MOVE(18, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(23, MOVE_FLAIL),
LEVEL_UP_MOVE(25, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(27, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(40, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(41, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(43, MOVE_CURSE),
LEVEL_UP_MOVE(48, MOVE_MUDDY_WATER),
LEVEL_UP_END
};

static const struct LevelUpMove sGoodraHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 0, MOVE_IRON_TAIL),
LEVEL_UP_MOVE( 0, MOVE_SLUDGE_BOMB),
LEVEL_UP_MOVE( 0, MOVE_THUNDERBOLT),
LEVEL_UP_MOVE( 0, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 0, MOVE_DRACO_METEOR),
LEVEL_UP_MOVE( 0, MOVE_STEEL_BEAM),
LEVEL_UP_MOVE( 0, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 0, MOVE_FIRE_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_THUNDER_PUNCH),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_FLAMETHROWER),
LEVEL_UP_MOVE( 1, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE( 1, MOVE_ACID_SPRAY),
LEVEL_UP_MOVE( 1, MOVE_POISON_TAIL),
LEVEL_UP_MOVE( 1, MOVE_TEARFUL_LOOK),
LEVEL_UP_MOVE( 1, MOVE_FEINT),
LEVEL_UP_MOVE( 1, MOVE_ABSORB),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_WATER_GUN),
LEVEL_UP_MOVE( 1, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE( 1, MOVE_OUTRAGE),
LEVEL_UP_MOVE( 1, MOVE_BUBBLE),
LEVEL_UP_MOVE( 1, MOVE_PROTECT),
LEVEL_UP_MOVE( 5, MOVE_ABSORB),
LEVEL_UP_MOVE(12, MOVE_PROTECT),
LEVEL_UP_MOVE(13, MOVE_BIDE),
LEVEL_UP_MOVE(18, MOVE_DRAGON_BREATH),
LEVEL_UP_MOVE(23, MOVE_FLAIL),
LEVEL_UP_MOVE(25, MOVE_WATER_PULSE),
LEVEL_UP_MOVE(27, MOVE_RAIN_DANCE),
LEVEL_UP_MOVE(40, MOVE_DRAGON_PULSE),
LEVEL_UP_MOVE(41, MOVE_BODY_SLAM),
LEVEL_UP_MOVE(43, MOVE_CURSE),
LEVEL_UP_MOVE(49, MOVE_MUDDY_WATER),
LEVEL_UP_MOVE(50, MOVE_AQUA_TAIL),
LEVEL_UP_MOVE(60, MOVE_POWER_WHIP),
LEVEL_UP_END
};

static const struct LevelUpMove sAvaluggHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_ICE_FANG),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_ICE_BALL),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_BULLDOZE),
LEVEL_UP_MOVE( 0, MOVE_STEALTH_ROCK),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SLIDE),
LEVEL_UP_MOVE( 0, MOVE_IRON_HEAD),
LEVEL_UP_MOVE( 0, MOVE_WATER_PULSE),
LEVEL_UP_MOVE( 0, MOVE_EARTH_POWER),
LEVEL_UP_MOVE( 0, MOVE_FLASH_CANNON),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 0, MOVE_HIGH_HORSEPOWER),
LEVEL_UP_MOVE( 0, MOVE_STONE_EDGE),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_ICE_BEAM),
LEVEL_UP_MOVE( 1, MOVE_BODY_SLAM),
LEVEL_UP_MOVE( 1, MOVE_WIDE_GUARD),
LEVEL_UP_MOVE( 1, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE( 1, MOVE_HARDEN),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE( 1, MOVE_CRUNCH),
LEVEL_UP_MOVE( 1, MOVE_SKULL_BASH),
LEVEL_UP_MOVE( 1, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE( 1, MOVE_BITE),
LEVEL_UP_MOVE( 5, MOVE_POWDER_SNOW),
LEVEL_UP_MOVE(11, MOVE_ICY_WIND),
LEVEL_UP_MOVE(14, MOVE_CURSE),
LEVEL_UP_MOVE(15, MOVE_PROTECT),
LEVEL_UP_MOVE(20, MOVE_SHARPEN),
LEVEL_UP_MOVE(21, MOVE_BITE),
LEVEL_UP_MOVE(24, MOVE_ICE_FANG),
LEVEL_UP_MOVE(26, MOVE_TAKE_DOWN),
LEVEL_UP_MOVE(27, MOVE_IRON_DEFENSE),
LEVEL_UP_MOVE(28, MOVE_AVALANCHE),
LEVEL_UP_MOVE(30, MOVE_ICE_BALL),
LEVEL_UP_MOVE(35, MOVE_RAPID_SPIN),
LEVEL_UP_MOVE(39, MOVE_RECOVER),
LEVEL_UP_MOVE(43, MOVE_BLIZZARD),
LEVEL_UP_MOVE(47, MOVE_CRUNCH),
LEVEL_UP_MOVE(50, MOVE_DOUBLE_EDGE),
LEVEL_UP_MOVE(54, MOVE_SKULL_BASH),
LEVEL_UP_END
};

static const struct LevelUpMove sDecidueyeHisuianLevelUpLearnset[] = {
LEVEL_UP_MOVE( 0, MOVE_FALSE_SWIPE),
LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH),
LEVEL_UP_MOVE( 0, MOVE_SPIKES),
LEVEL_UP_MOVE( 0, MOVE_AERIAL_ACE),
LEVEL_UP_MOVE( 0, MOVE_SWIFT),
LEVEL_UP_MOVE( 0, MOVE_MAGICAL_LEAF),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_BALL),
LEVEL_UP_MOVE( 0, MOVE_FOCUS_ENERGY),
LEVEL_UP_MOVE( 0, MOVE_BULK_UP),
LEVEL_UP_MOVE( 0, MOVE_ENERGY_BALL),
LEVEL_UP_MOVE( 0, MOVE_REST),
LEVEL_UP_MOVE( 0, MOVE_SHADOW_CLAW),
LEVEL_UP_MOVE( 0, MOVE_PSYCHO_CUT),
LEVEL_UP_MOVE( 0, MOVE_HYPER_BEAM),
LEVEL_UP_MOVE( 0, MOVE_GIGA_IMPACT),
LEVEL_UP_MOVE( 1, MOVE_SPIRIT_SHACKLE),
LEVEL_UP_MOVE( 1, MOVE_PHANTOM_FORCE),
LEVEL_UP_MOVE( 1, MOVE_LEAF_STORM),
LEVEL_UP_MOVE( 1, MOVE_U_TURN),
LEVEL_UP_MOVE( 1, MOVE_SPITE),
LEVEL_UP_MOVE( 1, MOVE_TACKLE),
LEVEL_UP_MOVE( 1, MOVE_GROWL),
LEVEL_UP_MOVE( 1, MOVE_LEAFAGE),
LEVEL_UP_MOVE( 1, MOVE_ASTONISH),
LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE( 1, MOVE_PECK),
LEVEL_UP_MOVE( 4, MOVE_GROWL),
LEVEL_UP_MOVE( 8, MOVE_PECK),
LEVEL_UP_MOVE(11, MOVE_ASTONISH),
LEVEL_UP_MOVE(12, MOVE_SHADOW_SNEAK),
LEVEL_UP_MOVE(14, MOVE_RAZOR_LEAF),
LEVEL_UP_MOVE(16, MOVE_OMINOUS_WIND),
LEVEL_UP_MOVE(19, MOVE_FORESIGHT),
LEVEL_UP_MOVE(21, MOVE_SYNTHESIS),
LEVEL_UP_MOVE(24, MOVE_PLUCK),
LEVEL_UP_MOVE(33, MOVE_FURY_ATTACK),
LEVEL_UP_MOVE(36, MOVE_NASTY_PLOT),
LEVEL_UP_MOVE(37, MOVE_SUCKER_PUNCH),
LEVEL_UP_MOVE(44, MOVE_LEAF_BLADE),
LEVEL_UP_MOVE(50, MOVE_FEATHER_DANCE),
LEVEL_UP_MOVE(57, MOVE_BRAVE_BIRD),
LEVEL_UP_END
};

static const struct LevelUpMove sFIndeedeeLevelUpLearnset[] = {
LEVEL_UP_MOVE( 1, MOVE_STORED_POWER),
LEVEL_UP_MOVE( 1, MOVE_PLAY_NICE),
LEVEL_UP_MOVE( 5, MOVE_BATON_PASS),
LEVEL_UP_MOVE(10, MOVE_DISARMING_VOICE),
LEVEL_UP_MOVE(15, MOVE_PSYBEAM),
LEVEL_UP_MOVE(20, MOVE_HELPING_HAND),
LEVEL_UP_MOVE(25, MOVE_FOLLOW_ME),
LEVEL_UP_MOVE(30, MOVE_AROMATHERAPY),
LEVEL_UP_MOVE(35, MOVE_PSYCHIC),
LEVEL_UP_MOVE(40, MOVE_CALM_MIND),
LEVEL_UP_MOVE(45, MOVE_POWER_SPLIT),
LEVEL_UP_MOVE(50, MOVE_PSYCHIC_TERRAIN),
LEVEL_UP_MOVE(55, MOVE_LAST_RESORT),
LEVEL_UP_END
};
